Android程序开发之手机APP创建桌面快捷方式

前端技术 2023/09/01 Android

预览效果图:

需要权限:

<uses-permission android:name=\"com.android.launcher.permission.INSTALL_SHORTCUT\" /> 

配置文件:AndroidManifest.xml

<activity
android:name=\"com.myself.news.activity.GuideActivity\"
android:label=\"@string/title_activity_guide\" >
<intent-filter>
<action android:name=\"com.myself.news.ACTION_HOME\" />
<category android:name=\"android.intent.category.DEFAULT\" />
</intent-filter>
</activity> 

在应用的闪屏页面Activity的 oncreate方法调用 installShortcut();

代码:

// 创建快捷方式
// com.android.launcher.permission.INSTALL_SHORTCUT
private void installShortcut() {
// 判断有没有创建过快捷方式
boolean isCreated = SharedPreferencesUtils.getBoolean(this,
GlobalConstantsUtils.PREF_IS_SHORTCUT_INTALLED, false);
// 判断是否已经创建过
if (!isCreated) {
// 发广播
Intent intent = new Intent();
intent.setAction(\"com.android.launcher.action.INSTALL_SHORTCUT\");
// 图标
// 根据资源文件id生成Bitmap对象
intent.putExtra(Intent.EXTRA_SHORTCUT_ICON, BitmapFactory
.decodeResource(getResources(), R.drawable.ic_launcher));
// 名称
intent.putExtra(Intent.EXTRA_SHORTCUT_NAME, \"手机安全卫士\");
// 动作
Intent actionIntent = new Intent();
// 跳到主页面
actionIntent.setAction(GlobalConstantsUtils.ACTION_HOME);
intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, actionIntent);
sendBroadcast(intent);
// 标记已经创建过快捷方式,下次不再创建
SharedPreferencesUtils.setBoolean(this,
GlobalConstantsUtils.PREF_IS_SHORTCUT_INTALLED, true);
}
}

常量工具类GlobalConstantsUtils:

public static final String PREF_IS_SHORTCUT_INTALLED = \"is_shortcut_intalled\";// 是否已经创建快捷方式 
public static final String ACTION_HOME = \"com.myself.news.ACTION_HOME\";// 跳转到主页面的ACTION


本文地址:https://www.stayed.cn/item/2958

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。