zoukankan      html  css  js  c++  java
  • Android -- ShortCut

    添加                                                                                   

    添加快捷方式是向桌面应用(launcher)发送相关action的广播:

    public static final String ACTION_ADD_SHORTCUT = "com.android.launcher.action.INSTALL_SHORTCUT";

    Code:

    private void addShortcut(String name) {
            Intent addShortcutIntent = new Intent(ACTION_ADD_SHORTCUT);
    
            // 不允许重复创建
            addShortcutIntent.putExtra("duplicate", false);// 经测试不是根据快捷方式的名字判断重复的
        
    // 名字
            addShortcutIntent.putExtra(Intent.EXTRA_SHORTCUT_NAME, name);
    
            // 图标
            addShortcutIntent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE,
                    Intent.ShortcutIconResource.fromContext(MainActivity.this,
                            R.drawable.ic_launcher));
    
            // 设置关联程序
            Intent launcherIntent = new Intent(Intent.ACTION_MAIN);
            launcherIntent.setClass(MainActivity.this, MainActivity.class);
            launcherIntent.addCategory(Intent.CATEGORY_LAUNCHER);
    
            addShortcutIntent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, launcherIntent);
    
            // 发送广播
            sendBroadcast(addShortcutIntent);
        }

    移除                                                                                   

    action:

    public static final String ACTION_REMOVE_SHORTCUT = "com.android.launcher.action.UNINSTALL_SHORTCUT";

    Code:

    private void removeShortcut(String name) {
    
            Intent intent = new Intent(ACTION_REMOVE_SHORTCUT);
    
            // 名字
            intent.putExtra(Intent.EXTRA_SHORTCUT_NAME, name);
    
            // 设置关联程序
            Intent launcherIntent = new Intent(MainActivity.this,MainActivity.class).setAction(Intent.ACTION_MAIN);
    
            intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, launcherIntent);
    
            // 发送广播
            sendBroadcast(intent);
        }

    权限                                                                                   

    <!-- 添加快捷方式 -->
        <uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" />
        <!-- 移除快捷方式 -->
        <uses-permission android:name="com.android.launcher.permission.UNINSTALL_SHORTCUT" />

    我是天王盖地虎的分割线                                                             

  • 相关阅读:
    NX二次开发-UFUN计时函数UF_end_timer
    NX二次开发-UFUN写入本地文本文档uc4524
    NX二次开发-UFUN关闭本地文本文档uc4540
    NX二次开发-UFUN读取本地文本文档uc4514a
    MFC弹出选择文件和选择文件夹代码
    NX二次开发-UFUN多选菜单对话框uc1605
    NX二次开发-UFUN文件选择对话框UF_UI_create_filebox
    NX二次开发-UFUN多按钮模态对话框UF_UI_message_dialog
    NX二次开发-算法篇-找相切面
    NX二次开发-UFUN获取边的光顺性UF_MODL_ask_edge_smoothness(找相切面)
  • 原文地址:https://www.cnblogs.com/yydcdut/p/4154377.html
Copyright © 2011-2022 走看看