2013-04-21 65 views
2

我的应用程序可以选择创建主屏幕快捷方式。创建发送广播的快捷方式

我创建这样的快捷方式:

Intent intent = new Intent(); 
intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, 
new Intent(ShortcutCreateActivity.this, ShortcutCreateActivity.class).putExtra(EXTRA_PROFILE_ID, profileId).putExtra(EXTRA_PROFILE_ACTION, item)); 
intent.putExtra(Intent.EXTRA_SHORTCUT_NAME, profileTitle); 
intent.putExtra(Intent.EXTRA_SHORTCUT_ICON, bitmap); 

可正常工作......当用户单击该快捷方式时,ShortcutCreateActivity启动和我做什么,我需要。

但是!我想避免打开一个活动的需要。相反,我想创建一个发送广播的快捷方式。

我试着用替换意图:

intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, 
    new Intent(INTENT_ACTION_THAT_I_WANT) 

但是当我点击该快捷方式,它显示“未安装应用程序”举杯。

是否可以创建主屏幕快捷方式来发送广播而不是启动活动?

(开始活动并快速完成它不是一个选项)。

谢谢!

回答

6

是否可以创建主屏幕快捷方式发送广播而不是启动活动?

严格地说,没有。

但是,你可以把它指向设置了Theme.NoDisplay,凡在活动的onCreate()您发送广播,并呼吁finish()无需调用setContentView()的活动。从视觉上看,这与快速发送广播本身无法区分。