Android创建和删除桌面快捷方式
16lz
2021-12-04
Android创建和删除桌面快捷方式
[java] view plain copy print ?
- /**
- *为程序创建桌面快捷方式
- */
- privatevoidaddShortcut()
- {
- Intentshortcut=newIntent(
- "com.android.launcher.action.INSTALL_SHORTCUT");
- //快捷方式的名称
- shortcut.putExtra(Intent.EXTRA_SHORTCUT_NAME,
- getString(R.string.app_name));
- shortcut.putExtra("duplicate",false);//不允许重复创建
- //指定当前的Activity为快捷方式启动的对象:如com.everest.video.VideoPlayer
- //注意:ComponentName的第二个参数必须加上点号(.),否则快捷方式无法启动相应程序
- ComponentNamecomp=newComponentName(this.getPackageName(),"."
- +this.getLocalClassName());
- shortcut.putExtra(Intent.EXTRA_SHORTCUT_INTENT,newIntent(
- Intent.ACTION_MAIN).setComponent(comp));
- //快捷方式的图标
- ShortcutIconResourceiconRes=Intent.ShortcutIconResource.fromContext(
- this,R.drawable.icon);
- shortcut.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE,iconRes);
- sendBroadcast(shortcut);
- }
- /**
- *删除程序的快捷方式
- */
- privatevoiddelShortcut()
- {
- Intentshortcut=newIntent(
- "com.android.launcher.action.UNINSTALL_SHORTCUT");
- //快捷方式的名称
- shortcut.putExtra(Intent.EXTRA_SHORTCUT_NAME,
- getString(R.string.app_name));
- //指定当前的Activity为快捷方式启动的对象:如com.everest.video.VideoPlayer
- //注意:ComponentName的第二个参数必须是完整的类名(包名+类名),否则无法删除快捷方式
- StringappClass=this.getPackageName()+"."
- +this.getLocalClassName();
- ComponentNamecomp=newComponentName(this.getPackageName(),appClass);
- shortcut.putExtra(Intent.EXTRA_SHORTCUT_INTENT,newIntent(
- Intent.ACTION_MAIN).setComponent(comp));
- sendBroadcast(shortcut);
- }
更多相关文章
- Android(安卓)创建悬停通知栏
- Android中创建和检测快捷方式
- Android(安卓)数据库操作 创建 添加 删除 查询
- Gradle DSL method not found: 'android()
- Retrofit系列文章翻译1—开始创建android客户端
- Android之TableLayout布局
- Android应用程序请求SurfaceFlinger服务创建Surface的过程分析
- Android(安卓)android下的数据持久化和读取数据,保存数据到手机及
- Android本地数据存储之SQLite