之前有谈过直接在桌面生成快捷方式,现在说说如何在添加到一个SHORTCUTS列表中,就是你长按桌面弹出来的那个东东。
首先在注册activity时,需要添加一个action为android.intent.action.CREATE_SHOERTCUT的intentFilter.如下所示:
<activity android:name="ShortCutTest"> <intent-filter> <action android:name="android.intent.action.CREATE_SHORTCUT"/> </intent-filter> </activity>
接下来就是就是设置快捷方式的图标、名称、事件等属性。这里图表的生成,android里提供了专门的方法来生成。
public class ShortCutTest extends Activity{ @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); } public void createShortCut(){ Intent addShortCut; //判断是否需要添加快捷方式 if(getIntent().getAction().equals(Intent.ACTION_CREATE_SHORTCUT)){ addShortCut = new Intent(); //快捷方式的名称 addShortCut.putExtra(Intent.EXTRA_SHORTCUT_NAME , "我的快捷方式"); //显示的图片 Parcelable icon = ShortcutIconResource.fromContext(this, R.drawable.icon); addShortCut.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, icon); //快捷方式激活的activity,需要执行的intent,自己定义 addShortCut.putExtra(Intent.EXTRA_SHORTCUT_INTENT, new Intent()); //OK,生成 setResult(RESULT_OK, addShortCut); }else{ //取消 setResult(RESULT_CANCELED); } } }
ok.
|