android 添加快捷方式到桌面

/**
     * 是否已创建快捷方式
     * @return
     */
    private boolean hasShortcut()

    {
        boolean isInstallShortcut = false;
        final String AUTHORITY ="com.android.launcher.settings";
        final Uri CONTENT_URI = Uri.parse("content://" +AUTHORITY + "/favorites?notify=true");
        Cursor c = getContentResolver().query(CONTENT_URI, new String[] {"title", "iconResource" }, "title=?", new String[] {shopDetail.getTitle()}, null);
        if(null != c && c.getCount() > 0)
        {
            isInstallShortcut = true ;
        }
        return isInstallShortcut;
    }
    /**
     * 创建快捷方式
     */
    private void addShortcut()
    {
        if (hasShortcut())
        {
            return;
        }
        Intent shortcut = new Intent("com.android.launcher.action.INSTALL_SHORTCUT");
        //快捷方式的名称
        shortcut.putExtra(Intent.EXTRA_SHORTCUT_NAME, shopDetail.getTitle() + "的店铺");
        //不允许重复创建
        shortcut.putExtra("duplicate", false);
        //指定当前的Activity为快捷方式启动的对象:
        ComponentName comp = new ComponentName("com.itel.platform", "com.itel.platform"+"."+"ui.shop.ShopIndexActivity");
        shortcut.putExtra(Intent.EXTRA_SHORTCUT_INTENT, new Intent(Intent.ACTION_MAIN).putExtra("shopId", uShopId).putExtra("openType", 1).setComponent(comp));
        //快捷方式的图标,可以添加两种类型
        if (bitmap != null) {
            shortcut.putExtra(Intent.EXTRA_SHORTCUT_ICON, bitmap);//有图片就用图片,没有就用当前App图片
        } else {
            Parcelable icon = Intent.ShortcutIconResource.fromContext(this, R.drawable.ic_launcher);
            shortcut.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, icon);//set the icon
        }
        //有的android版本不提示,这里手动提示
        if (Build.VERSION.SDK_INT == 10 || Build.VERSION.SDK_INT >= 19) {
            T.s(context, "快捷键 " + shopDetail.getTitle() + "的店铺 己添加");
        }
        sendBroadcast(shortcut);
    }

时间: 2024-10-07 03:05:33

android 添加快捷方式到桌面的相关文章

Android添加快捷方式(Shortcut)到手机桌面

Android添加快捷方式(Short)到手机桌面 权限 要在手机桌面上添加快捷方式,首先需要在manifest中添加权限. <!-- 添加快捷方式 --> <uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" /> <!-- 移除快捷方式 --> <uses-permission android:name="com.andro

Android添加快捷方式

private void addShortcutToDesktop() { Intent shortcut = new Intent("com.android.launcher.action.INSTALL_SHORTCUT"); // 不允许重建 shortcut.putExtra("duplicate", false); // 设置名字 shortcut.putExtra(Intent.EXTRA_SHORTCUT_NAME,getString(R.string

android 添加桌面快捷方式

.在桌面创建快捷方式方法: 方法一:通过长按某一个应用程序的图标在桌面上创建启动该应用程序的快捷方式. 这个方法安装完程序都用户都能实现. 方法二:在应用程序中构建一个Intent,然后以Broadcast的形式通知Launcher创建快捷方式. 先看Launcher的AndroidMainfest.xml文件中InstallShortcutReceiver的注册信息: Xml代码   <!--设置wallpapaer的activity --> <!-- Intent received 

Android开发之向桌面添加快捷方式

对于一个希望拥有更多用户的应用来说,用户桌面可以说是所有软件的必争之地,如果用户在手机桌面上建立了该软件的快捷方式,用户将会更频繁地使用该软件.因此,所有 Android程序都应该允许用户把软件的快捷方式添加到桌面上. 在程序中把一个软件的快捷方式添加到桌面上,只需要如下三步即可: 1. 创建一个添加快捷方式的Intent该Intent的Action属性值应该为com.android.launcher.action.INSTALLSHORTCUT,. 2. 通过为该Intent加Extra属性来

在桌面添加快捷方式

/** * 在桌面添加快捷方式 * @param icon 快捷方式图标 * @param name 快捷方式名称 * @param url 快捷方式的intent url */ private void addShortcut(Parcelable icon, String name, String url){ try { // Intent intentAddShortcut = new Intent(Intent.ACTION_CREATE_SHORTCUT); Intent intent

Android应用创建手机桌面快捷方式

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation

Android创建快捷方式

问题描述: 想要在手机的桌面上添加快捷方式,而桌面又属于系统的应用,也就是说我们需要有一个与系统进行通信的接口.还好Android中有广播,而Android系统中又有接收添加快捷方式广播的广播接收者.于是,为我们的应用快捷方式就变得很简单了. 关键代码: private void createShortCut() { Intent addIntent = new Intent("com.android.launcher.action.INSTALL_SHORTCUT"); // 获取快

android widget 开发实例 : 桌面便签程序的实现具体解释和源代码 (上)

如有错漏请不吝拍砖指正,转载请注明出处,很感谢 桌面便签软件是android上经常使用软件的一种,比方比較早的Sticky Note,就曾很流行, Sticky Note的介绍能够參见 http://www.tompda.com/c/article/11778/ 而实际上使用android平台对widget开发的支持,桌面便签类软件是很易于开发的. 本文通过逐步实现一个简单的桌面便签软件,和大家分享进行widget开发的过程和方法. 1.MyNote的终于实现效果 为了提起大家阅读本文的兴趣,先

android添加账户源码浅析

上篇粗略的分析android添加账号的流程,本篇深入的解析下执行步骤.先来看图片,取自深入理解android卷2: 上图详细的分析了addAccount的流程,下面我们结合源码来理解它 1.addAccount:其实这里省略了一步,应该是客户端addAccount——>AddAccountSettings.addAccount——>AccountManager.addAccount.我们看下setting是如何到AccountManager: private void addAccount(S