zoukankan      html  css  js  c++  java
  • 创建桌面快捷方式的实现

    创建桌面快捷方式:

    //创建快捷方式
        private void installShortcut() {
            //        <receiver
            //        android:name="com.android.launcher2.InstallShortcutReceiver"
            //        android:permission="com.android.launcher.permission.INSTALL_SHORTCUT">
            //        <intent-filter>
            //        <action android:name="com.android.launcher.action.INSTALL_SHORTCUT" />
            //        </intent-filter>
            //        </receiver>
            //快捷方式只能创建一次
            boolean installed = PrefUtils.getBoolean(this,"shortcut_installed", false);
            if (!installed) {
                //发一个广播
                Intent intent = new Intent("com.android.launcher.action.INSTALL_SHORTCUT");
                //图标
                intent.putExtra(Intent.EXTRA_SHORTCUT_ICON, BitmapFactory.decodeResource(getResources(),
                        R.mipmap.ic_launcher));//BitmapFactory: 将资源文件id转成Bitmap对象
                //名称
                intent.putExtra(Intent.EXTRA_SHORTCUT_NAME, "快捷测试");
                //动作
                Intent actionIntent = new Intent();
                //跳到主页面, 隐式意图 action
                actionIntent.setAction("com.loaderman.demo");
                actionIntent.addCategory(Intent.CATEGORY_DEFAULT);
                intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, actionIntent);
                sendBroadcast(intent);
                PrefUtils.putBoolean(this, "shortcut_installed", true);
            }
    
        }
    public class PrefUtils {
    
        public static void putBoolean(Context ctx, String key, boolean value) {
            SharedPreferences sp = ctx.getSharedPreferences("config", Context.MODE_PRIVATE);
            sp.edit().putBoolean(key, value).commit();
        }
    
        public static boolean getBoolean(Context ctx, String key, boolean defValue) {
            SharedPreferences sp = ctx.getSharedPreferences("config", Context.MODE_PRIVATE);
            return sp.getBoolean(key, defValue);
        }
    }
    

     在清单文件添加权限和创建配置需要跳转界面的action

     <uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT"/>
    
     <activity android:name=".MainActivity">
                <intent-filter>
                    <action android:name="android.intent.action.MAIN"/>
                     <action android:name="com.loaderman.demo" />
                    <category android:name="android.intent.category.LAUNCHER"/>
                </intent-filter>
     </activity>
    

     当此方法调用时就会去创建快捷方式.现在开发中很少使用

  • 相关阅读:
    Git 基础
    SharePoint 2013 对象模型操作"网站设置"菜单
    SharePoint 2013 隐藏部分Ribbon菜单
    SharePoint 2013 Designer系列之数据视图筛选
    SharePoint 2013 Designer系列之数据视图
    SharePoint 2013 Designer系列之自定义列表表单
    SharePoint 2013 设置自定义布局页
    SharePoint 2013 "通知我"功能简介
    SharePoint 2013 创建web应用程序报错"This page can’t be displayed"
    SharePoint 禁用本地回环的两个方法
  • 原文地址:https://www.cnblogs.com/loaderman/p/6509839.html
Copyright © 2011-2022 走看看