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.app_name));// 桌面快捷方式名称
        // 设置图标
        shortcut.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE,Intent.ShortcutIconResource.fromContext(this,R.mipmap.ic_launcher));
        // 设置意图和快捷方式关联程序
        Intent intent = new Intent(this, this.getClass());
        // 桌面图标和应用绑定,卸载应用后系统会同时自动删除图标
        intent.setAction("android.intent.action.MAIN");
        intent.addCategory("android.intent.category.LAUNCHER");
        shortcut.putExtra(Intent.EXTRA_SHORTCUT_INTENT, intent);
        // 发送广播
        sendBroadcast(shortcut);

    }
    private boolean isShortcutInstalled() {
        boolean isInstallShortcut = false;
        final ContentResolver cr = this.getContentResolver();
        // 2.2系统是”com.android.launcher2.settings”,网上见其他的为"com.android.launcher.settings"
        String AUTHORITY = null;
        /*
         * 根据版本号设置Uri的AUTHORITY
         */
//        if (getSystemVersion() >= 8) {
            AUTHORITY = "com.android.launcher2.settings";
//        } else {
//            AUTHORITY = "com.android.launcher.settings";
//        }

        Uri CONTENT_URI = Uri.parse("content://" + AUTHORITY + "/favorites?notify=true");
        Cursor c = cr.query(CONTENT_URI,
                new String[] { "title", "iconResource" }, "title=?",
                new String[] { getString(R.string.app_name) }, null);// 这里得保证app_name与创建
        //快捷方式名的一致,否则会出现提示“快捷方式已经创建”
        if (c != null && c.getCount() > 0) {
            isInstallShortcut = true;
        }
        return isInstallShortcut;
    }
时间: 2024-12-21 23:19:33

Android添加快捷方式的相关文章

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

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

android 添加快捷方式到桌面

/** * 是否已创建快捷方式 * @return */ private boolean hasShortcut() { boolean isInstallShortcut = false; final String AUTHORITY ="com.android.launcher.settings"; final Uri CONTENT_URI = Uri.parse("content://" +AUTHORITY + "/favorites?notif

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属性来

Android创建快捷方式

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

在桌面添加快捷方式

/** * 在桌面添加快捷方式 * @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添加账户源码浅析

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

WORD公式编辑器的使用(快捷键or添加快捷方式到工具栏)

必须有安装Microsoft 公式编辑器才能创建快捷键or添加快捷方式到工具栏, word公式编辑器怎么用_百度经验http://jingyan.baidu.com/article/f54ae2fcf89a981e93b8497e.html 1.创建快捷键 转自百度经验:http://jingyan.baidu.com/article/e4d08ffdf3ed490fd2f60d36.html 在日常使用Word2010时,我们经常会使用一些十分方便的快捷键,但有时候Word自带的一些快捷键则用

Android 添加数据到本地Excel表中

由于项目需要,今天学习了一下如何将程序里的数据添加到本地的Excel表中. 下面为学习笔记: 先上效果图: 首先,需要导入jxl.jar包到libs文件夹内. 然后创建Excel表,并往表里添加表头. // 创建excel表. public void createExcel(File file) { WritableSheet ws = null; try { if (!file.exists()) { // 创建表 wwb = Workbook.createWorkbook(file); //