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

作者:Jusenr/荣雪-rongsnow 时间:2023-04-01 06:55:49 

预览效果图:

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

需要权限:


<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
标签:app,桌面,快捷方式
0
投稿

猜你喜欢

  • java 实现定时的方法及实例代码

    2023-03-31 22:48:41
  • Unity实现物体左右移动效果

    2021-12-17 15:52:31
  • Java经典面试题最全汇总208道(六)

    2023-11-23 17:52:45
  • C#实现在PDF文档中应用多种不同字体

    2022-01-18 02:13:28
  • Java中关键字synchronized的使用方法详解

    2022-04-14 06:18:54
  • Android开发之多媒体文件获取工具类实例【音频,视频,图片等】

    2022-03-05 22:44:24
  • java数字转汉字工具类详解

    2023-04-28 02:00:26
  • springboot自定义过滤器的方法

    2021-07-29 05:36:53
  • 不可不知道的10个java谎言

    2022-01-21 10:25:40
  • Android 官推 kotlin-first 的图片加载库——Coil的使用入门

    2022-07-06 00:53:34
  • android桌面悬浮窗显示录屏时间控制效果

    2022-04-21 14:54:12
  • 浅析Java的Hibernate框架中的继承关系设计

    2021-10-18 03:10:03
  • Spring4如何自定义@Value功能详解

    2021-12-16 06:31:12
  • Java基础学习之关键字和变量数据类型的那些事

    2023-09-17 04:31:24
  • JPA save()方法将字段更新为null的解决方案

    2023-10-28 22:29:28
  • 详解C语言求两个数的最大公约数及最小公倍数的方法

    2022-02-28 01:17:25
  • java实现的各种排序算法代码示例

    2023-01-29 03:48:27
  • Android编程基于Contacts读取联系人的方法(附demo源码)

    2023-11-22 06:05:39
  • C# 10个常用特性汇总

    2023-03-22 01:04:13
  • Java 程序内部是如何执行的?

    2022-04-29 20:18:36
  • asp之家 软件编程 m.aspxhome.com