这个比较简单,直接上代码:
在启动界面的onCreate()中调用就可以,为避免重复创建,添加一个标记
public void createDeskShortCut() {
// 创建快捷方式的Intent
Intent shortcutIntent = new Intent(
"com.android.launcher.action.INSTALL_SHORTCUT");
// 不允许重复创建
shortcutIntent.putExtra("duplicate", false);
// 需要现实的名称
shortcutIntent.putExtra(Intent.EXTRA_SHORTCUT_NAME,
getString(R.string.app_name));
// 快捷图片
Parcelable icon = Intent.ShortcutIconResource.fromContext(
getApplicationContext(), R.drawable.logo);
shortcutIntent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, icon);
Intent intent = new Intent(getApplicationContext(),
LoadingActivity.class);
// 下面两个属性是为了当应用程序卸载时桌面 上的快捷方式会删除
intent.setAction("android.intent.action.MAIN");
intent.addCategory("android.intent.category.LAUNCHER");
// 点击快捷图片,运行的程序主入口
shortcutIntent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, intent);
// 发送广播。OK
sendBroadcast(shortcutIntent);
Toast.makeText(getApplicationContext(), "创建桌面快捷方式测试", 0).show();
}
在启动界面的onCreate()中调用就可以,为避免重复创建,添加一个标记
SharedPreferences sharedPrefe = getSharedPreferences(Constants.SP_NAME,
Context.MODE_PRIVATE);
boolean isCreateDesk = sharedPrefe.getBoolean("isCreateDesk", true);
if (isCreateDesk) {
createDeskShortCut();
}
SharedPreferences.Editor editor = sharedPrefe.edit();
editor.putBoolean("isCreateDesk", false);
editor.commit();