加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

Android快捷图标的创建与移除

发布时间:2020-05-24 21:25:51 所属栏目:Java 来源:互联网
导读:Android快捷图标的创建与移除

下面是脚本之家 jb51.cc 通过网络收集整理的代码片段。

脚本之家小编现在分享给大家,也给大家做个参考。

    /** 
         * 添加桌面快捷方式 
         *  
         * @param view 
         */  
        public void click1(View view) {  
            if (isExit()) {  
                Toast.makeText(getApplicationContext(),"快捷方式已经存在",0).show();  
                return;  
            }  
            // 取得图标资源  
            Parcelable icon = Intent.ShortcutIconResource.fromContext(  
                    getApplicationContext(),R.drawable.logo);  
            Intent intent = new Intent();  
            // 设置意图的动作  
            intent.setAction("com.android.launcher.action.INSTALL_SHORTCUT");  
            // 设置图标的名称  
            intent.putExtra(Intent.EXTRA_SHORTCUT_NAME,"LOL");  
            // 设置图标  
            intent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE,icon);  
            // 设置意图的动作和类别  
            Intent intent2 = new Intent();  
            intent2.setAction(Intent.ACTION_MAIN);  
            intent2.addCategory(Intent.CATEGORY_LAUNCHER);  
            intent2.setComponent(new ComponentName(this,MainActivity.class));  
            intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT,intent2);  
            sendBroadcast(intent);  
        }  

    /** 
         * 删除桌面快捷方式 
         *  
         * @param view 
         */  
        public void click2(View view) {  
            Parcelable icon = Intent.ShortcutIconResource.fromContext(  
                    getApplicationContext(),R.drawable.logo);  
            Intent intent = new Intent();  
            // 设置意图的动作  
            intent.setAction("com.android.launcher.action.UNINSTALL_SHORTCUT");  
            // 设置图标的名称  
            intent.putExtra(Intent.EXTRA_SHORTCUT_NAME,intent2);  
            sendBroadcast(intent);  
        }  

    /** 
         * 判断桌面是否已经存在快捷方式 
         *  
         * @return 
         */  
        private boolean isExit() {  
            Uri uri = null;  
            // 不同版本中的Uri不同  
            if (getSdkVersion() < 8) {  
                uri = Uri  
                        .parse("content://com.android.launcher.settings/favorites");  
            } else {  
                uri = Uri  
                        .parse("content://com.android.launcher2.settings/favorites");  
            }  
            String selection = "title=?";  
            String[] selectionArgs = new String[] { "LOL" };  
            Cursor cursor = getContentResolver().query(uri,null,selection,selectionArgs,null);  
            if (cursor.moveToNext()) {  
                cursor.close();  
                return true;  
            } else {  
                cursor.close();  
                return false;  
            }  
        }  

    /** 
         * 获得手机SDK的版本 
         *  
         * @return 
         */  
        private int getSdkVersion() {  
            return android.os.Build.VERSION.SDK_INT;  
        }  

需要声明的权限
<!-- 添加快捷方式权限 -->
<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" />
<!-- 读取设置权限 -->
<uses-permission android:name="com.android.launcher.permission.READ_SETTINGS" />
<!-- 删除快捷方式权限 -->
<uses-permission android:name="com.android.launcher.permission.UNINSTALL_SHORTCUT"/>

以上是脚本之家(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。

如果觉得脚本之家网站内容还不错,欢迎将脚本之家网站推荐给程序员好友。

(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读