Android如何创建桌面快捷方式

Android创建桌面的快捷方式
概述 :创建桌面快捷方式相当与创建一个程序的入口,就像我们程序在安装完毕后会自动创建一个图标到桌面。其实创建桌面快捷方式跟创建一个程序入口差不多,但是像QQ会话一样创建一个QQ好友的会话快捷方式,就得动态的创建图标,名字了。

1.首先权限是必不可少的

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

2.然后就是在你项目配置文件里面配置

<activity android:name="com.easemob.chatuidemo.activity.ChatActivity" > <intent-filter> <category android:name="android.intent.category.LAUNCHER" /> <action android:name="android.intent.action.CREATE_SHORTCUT" /> </intent-filter> </activity>

这个actvity即为你要快捷方式点击后跳转的那一个activity

3.然后就是你要创建快捷方式的方法。

代码如下:

public void CreateShotCut(final Context context, final Class<?> clazz, final String name, final String image) { Intent shortcutIntent = new Intent(Intent.ACTION_MAIN); // 加入action,和category之后,程序卸载的时候才会主动将该快捷方式也卸载 shortcutIntent.addCategory(Intent.CATEGORY_LAUNCHER); shortcutIntent.setClass(context, clazz); /** * 创建一个Bundle对象让其保存将要传递的值 */ Bundle bundle = new Bundle(); bundle.putString("userId", userId); shortcutIntent.putExtras(bundle); /** * 设置这条属性,可以使点击快捷方式后关闭其他的任务栈的其他activity,然后创建指定的acticity */ shortcutIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); // 创建快捷方式的Intent Intent shortcut = new Intent(Intent.ACTION_CREATE_SHORTCUT); // 不允许重复创建 shortcut.putExtra("duplicate", false); // 点击快捷图片,运行的程序主入口 shortcut.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent); // 需要现实的名称 shortcut.putExtra(Intent.EXTRA_SHORTCUT_NAME, name); // 快捷图片 Parcelable icon = Intent.ShortcutIconResource.fromContext( getApplicationContext(), R.drawable.ic_launcher); shortcut.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, icon); shortcut.setAction("com.android.launcher.action.INSTALL_SHORTCUT"); context.sendBroadcast(shortcut); }

这行代码的重要性就在如果没有这一行,那么在你点击这个快捷方式,跳转的时候就会直接跳到这个应用的栈顶(如果指定的activity在栈顶,也不会跳转其上而是销毁)而不是指定的那一个Activity(刚开始没加这条属性的时候,一直跳转不到指定的activity上)。

shortcutIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);

如果想要动态的添加图片即创建快捷方式的时候获取网路上的图片来进行设置其快捷图片则使用

// Intent.EXTRA_SHORTCUT_ICON 是bitmap对象
    shortcut.putExtra(Intent.EXTRA_SHORTCUT_ICON,bitmap);

这行代码,你可以请求网路图片后转换为BitMap后设置进去。

ok动态的创建快捷方式就这样完成了。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

时间: 2024-09-20 11:36:54

Android如何创建桌面快捷方式的相关文章

Android编程创建桌面快捷方式的常用方法小结【2种方法】

本文实例讲述了Android编程创建桌面快捷方式的常用方法.分享给大家供大家参考,具体如下: Android在桌面上生成快捷方式有两种情况,一种是直接在桌面直接生成;一种是长按桌面,在弹出的快捷菜单中生成. 谈谈在桌面上直接生成.个人觉得这个比较爽快,既然都是快捷方式了干嘛还要再隐藏一层呢?当然喜欢桌面干净的就比较喜欢第二个了. 第一个是通过广播(Broadcast)的形式向Luncher发送请求生成快捷方式的. 在网上找到关于这方面的注册信息. <!--设置wallpapaer的activit

Android应用创建桌面快捷方式代码_Android

android的快捷方式比较简单,就是发一个系统的广播,然后为快捷方式设置Intent--- package com.xikang.android.slimcoach.utils; /** * @author huiych * 创建快捷方式 * @created 2013-02-21 * */ import android.content.Intent; import android.os.Parcelable; import com.xikang.android.slimcoach.AppXi

Android如何创建桌面快捷方式_Android

Android创建桌面的快捷方式 概述 :创建桌面快捷方式相当与创建一个程序的入口,就像我们程序在安装完毕后会自动创建一个图标到桌面.其实创建桌面快捷方式跟创建一个程序入口差不多,但是像QQ会话一样创建一个QQ好友的会话快捷方式,就得动态的创建图标,名字了. 1.首先权限是必不可少的 <uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" /> 2.然后就是在你项目配置

Android应用创建桌面快捷方式代码

android的快捷方式比较简单,就是发一个系统的广播,然后为快捷方式设置Intent--- package com.xikang.android.slimcoach.utils; /** * @author huiych * 创建快捷方式 * @created 2013-02-21 * */ import android.content.Intent; import android.os.Parcelable; import com.xikang.android.slimcoach.AppXi

android 为应用程序创建桌面快捷方式技巧分享_Android

我们开发一款软件后,如果手机装的软件过多,去翻的话会很难翻的,所以,在主页面有一个快捷方式的话会很不错的,下面是详细代码: 复制代码 代码如下: /** * 创建桌面快捷方式 */ private void createShortcut() { SharedPreferences setting = getSharedPreferences("silent.preferences", 0); // 判断是否第一次启动应用程序(默认为true) boolean firstStart =

Android程序开发之手机APP创建桌面快捷方式_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_activi

解析Android应用启动后自动创建桌面快捷方式的实现方法

要不怎么说Android特别开放呢,在Android开发中,只要发送一个广播,就可以实现这种需求了. 废话不多说,以下是封装好的一段代码.复制代码 代码如下:public class ShortcutUtil { public static void createShortCut(Activity act, int iconResId,              int appnameResId) { // com.android.launcher.permission.INSTALL_SHOR

android 为应用程序创建桌面快捷方式技巧分享

我们开发一款软件后,如果手机装的软件过多,去翻的话会很难翻的,所以,在主页面有一个快捷方式的话会很不错的,下面是详细代码: 复制代码 代码如下: /** * 创建桌面快捷方式 */ private void createShortcut() { SharedPreferences setting = getSharedPreferences("silent.preferences", 0); // 判断是否第一次启动应用程序(默认为true) boolean firstStart =

vc如何创建桌面快捷方式

BOOL CDlg::CreateDesktopShotCut(CString strName, CString strSourcePath) { if (FAILED(CoInitialize(NULL))) return FALSE; BOOL bRet = FALSE; TCHAR Path[MAX_PATH+1]; CString strDestDir; LPITEMIDLIST pidl; LPMALLOC pShell; if(SUCCEEDED(SHGetMalloc(&pShel