精华内容
下载资源
问答
  • App 快捷方式——创建快捷方式

    千次阅读 2019-01-15 18:53:07
    虽然静态快捷方式的上下文不会更改,并且动态快捷方式的上下文会不断更改,但两种情况下的上下文都是由您的应用程序驱动的。 如果用户选择他们希望您的应用向他们提供内容的方式,例如使用固定的快捷方式,则上下文...

    原文链接

    快捷方式通过帮助用户快速访问 app 的某些部分,为用户提供特定类型的内容。

    如何使用快捷方式提供内容取决于您的用例以及快捷方式的上下文是应用驱动还是用户驱动。 虽然静态快捷方式的上下文不会更改,并且动态快捷方式的上下文会不断更改,但两种情况下的上下文都是由您的应用程序驱动的。 如果用户选择他们希望您的应用向他们提供内容的方式,例如使用固定的快捷方式,则上下文由用户定义。 以下场景演示了每种快捷方式类型的一些用例:

    • 静态快捷方式 最适合在用户与应用程序交互的整个生命周期内使用一致结构链接到内容的应用程序。 由于大多数启动器只能同时显示四个快捷方式,因此静态快捷方式对于常见  activities 非常有用。 例如,如果用户想要以特定方式查看他们的日历或电子邮件,则使用静态快捷方式可确保他们执行常规任务的体验是一致的。
    • 动态快捷方式 用于对上下文敏感的应用程序中的操作。例如,如果您构建的游戏允许用户在启动时从当前级别开始,则需要频繁更新快捷方式。使用动态快捷方式可以在每次用户清除级别时更新快捷方式。
    • 固定快捷方式用于特定的用户驱动操作。 例如,用户可能希望将特定网站固定到启动器。 这很有用,因为它允许用户执行自定义操作,例如一步导航到网站,比使用默认浏览器更快。

    创建静态快捷方式


    静态快捷方式提供到应用程序中常规操作的链接,这些操作在 app 当前版本的整个生命周期中都应保持一致。静态快捷方式的良好的候选者包括查看已发送的消息、设置警报和显示用户当天的锻炼活动。

    要创建静态快捷方式,请完成以下步骤:

    1. 在应用程序的清单文件(AndroidManifest.xml)中,查找其 intent 过滤器设置为 android.intent.action.MAIN action 和android.intent.category.LAUNCHER category 的 activity。

    2. 向此 activity 中添加 <meta-data> 元素,该元素引用定义应用程序快捷方式的资源文件:

      <manifest xmlns:android="http://schemas.android.com/apk/res/android"
                package="com.example.myapplication">
        <application ... >
          <activity android:name="Main">
            <intent-filter>
              <action android:name="android.intent.action.MAIN" />
              <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
           
            <meta-data android:name="android.app.shortcuts"
                       android:resource="@xml/shortcuts" /> 
          </activity>
        </application>
      </manifest>

       

    3. 创建一个新的资源文件: res/xml/shortcuts.xml

    4. 在此新资源文件中,添加 <shortcuts> 根元素,其中包含 <shortcut> 元素的列表。 每个 <shortcut> 元素都包含有关静态快捷方式的信息,包括其图标,描述标签以及它在应用程序中启动的 intents:

      <shortcuts xmlns:android="http://schemas.android.com/apk/res/android">
        <shortcut
          android:shortcutId="compose"
          android:enabled="true"
          android:icon="@drawable/compose_icon"
          android:shortcutShortLabel="@string/compose_shortcut_short_label1"
          android:shortcutLongLabel="@string/compose_shortcut_long_label1"
          android:shortcutDisabledMessage="@string/compose_disabled_message1">
          <intent
            android:action="android.intent.action.VIEW"
            android:targetPackage="com.example.myapplication"
            android:targetClass="com.example.myapplication.ComposeActivity" />
          <!-- 如果您的快捷方式与多个 intent 相关联,请在这里包含它们。 
               列表中的最后一个 intent 决定用户在启动这个快捷方式时看到的内容。 -->
          <categories android:name="android.shortcut.conversation" />
        </shortcut>
        <!-- 在此处指定更多快捷方式。-->
      </shortcuts>

       

    自定义属性值

    以下列表包含静态快捷方式中不同属性的说明。 你必须为 android:shortcutId 和 android:shortcutShortLabel提供值。 其他所有值都是可选的。

    android:shortcutId

    字符串文字,代表 ShortcutManager 对象对其执行操作的快捷方式。

    注意:您不能将此属性的值设置为资源字符串,例如 @string/foo

     

    android:shortcutShortLabel

    描述快捷方式目的的简明短语。 如果可能,将快捷方式的“简短描述”的长度限制为10个字符。

    要获取更多信息,请参见 setShortLabel()

    注意:此属性的值必须是资源字符串,例如 @string/shortcut_short_label

     

    android:shortcutLongLabel

    描述快捷方式目的的扩展短语。 如果有足够的空间,启动器会显示此值而不是 android:shortcutShortLabel。 如果可能,将快捷方式的“长描述”的长度限制为25个字符。

    要获取更多信息,参见 setLongLabel().

    注意:此属性的值必须是资源字符串,例如 @string/shortcut_long_label

     

    android:shortcutDisabledMessage

    当用户尝试启动已禁用的快捷方式时,在支持的启动器中显示的消息。 该消息应向用户解释为什么现在禁用该快捷方式。 如果 android:enabledtrue,则此属性的值无效。

    注意:此属性的值必须是资源字符串,例如 @string/shortcut_disabled_message

     

    android:enabled

    决定用户是否可以从支持的启动器与快捷方式进行交互。android:enabled 的默认值为 true。 如果将其设置为 false,则还应设置 android:shortcutDisabledMessage,以解释禁用快捷方式的原因。 如果您认为不需要提供此类消息,则最简单的方法是从 XML 文件中完全删除该快捷方式。

     

    android:icon

    启动器在显示用户快捷方式时使用的 bitmap(位图) 或自适应图标。 此值可以是图像的路径,也可以是包含图像的资源文件。 尽可能使用自适应图标以提高性能和一致性。

    注意:快捷方式图标不能包含色调。

     

    配置内部元素

    列出应用程序的静态快捷方式的 XML 文件支持每个 <shortcut> 元素中的以下元素。 您必须为您定义的每个静态快捷方式包含一个 intent 内部元素。

    intent

    用户选择快捷方式时系统启动的操作。 此 intent 必须为 android:action 属性提供值。

    注意:此 intent 元素不能包含字符串资源。

    您可以为单个快捷方式提供多个 intent。 有关详细信息,请参阅  Manage multiple intents and activities ,Using intents,和 TaskStackBuilder 类参考。

     

    categories

    为应用程序快捷方式执行的操作类型提供分组,例如创建新的聊天消息。

    有关支持的快捷方式 categories 的列表,请参阅 ShortcutInfo 类引用。

     

    创建动态快捷方式


    动态快捷方式提供指向应用内特定的上下文相关操作的链接。 这些操作可能会在您的应用使用之间发生变化,甚至在您的应用运行时也会发生变化。动态快捷方式的良好候选者包括呼叫特定人员,导航到特定位置,以及从用户的最后保存点加载游戏。

    ShortcutManager API 允许您在动态快捷方式上完成以下操作:

    For more information about performing operations on shortcuts, read Manage shortcuts and the ShortcutManagerreference.有关在快捷方式上执行操作的更多信息,请阅读 Manage shortcuts 和 ShortcutManager 参考。

    以下代码段中显示了创建动态快捷方式并将其与您的 app 相关联的示例:

    注意:必须使用带有参数 ShortcutManager.class Context.getSystemService(Class) 或带有参数 Context.SHORTCUT_SERVICE 的 Context.getSystemService(String) 获取 ShortcutManager 类的实例。

    val shortcutManager = getSystemService<ShortcutManager>(ShortcutManager::class.java)
    
    val shortcut = ShortcutInfo.Builder(context, "id1")
            .setShortLabel("Website")
            .setLongLabel("Open the website")
            .setIcon(Icon.createWithResource(context, R.drawable.icon_website))
            .setIntent(Intent(Intent.ACTION_VIEW,
                    Uri.parse("https://www.mysite.example.com/")))
            .build()
    
    shortcutManager!!.dynamicShortcuts = Arrays.asList(shortcut)

     

    创建固定快捷方式


    要使用您的应用程序将快捷方式固定到支持的启动器,请完成以下步骤:

    1. 使用 isRequestPinShortcutSupported() 验证设备的默认启动器是否支持应用程序固定快捷方式。
    2. 根据快捷方式是否已存在,以两种方式之一创建 ShortcutInfo 对象:

      1. 如果快捷方式已存在,请创建仅包含现有快捷方式 ID 的 ShortcutInfo 对象。 系统自动查找并固定与快捷方式相关的所有其他信息。
      2. 如果要固定新快捷方式,请创建一个 ShortcutInfo 对象,其中包含新快捷方式的 ID,intent 和短标签。

      注意:由于系统会自动对固定快捷方式执行备份和还原,因此这些快捷方式的 ID 应包含稳定的常量字符串或服务器端标识符,而不是本地生成的标识符,这些标识符可能在其他设备上没有意义。

    3. 通过调用 requestPinShortcut() 尝试将快捷方式固定到设备的启动器。 在此过程中,您可以传入 PendingIntent 对象,该对象仅在快捷方式成功固定时通知您的应用。

      注意:如果用户不允许将快捷方式固定到启动器,则您的应用程序不会收到回调。

      固定快捷方式后,您的应用可以使用 updateShortcuts() 方法更新其内容。 有关更多信息,请阅读更新快捷方式

    以下代码段演示了如何创建固定快捷方式:

    注意:必须使用带有参数 ShortcutManager.class  Context.getSystemService(Class) 或带有参数 Context.SHORTCUT_SERVICE 的 Context.getSystemService(String)获取 ShortcutManager 类的实例。

    val shortcutManager = getSystemService(ShortcutManager::class.java)
    
    if (shortcutManager!!.isRequestPinShortcutSupported) {
        // 假设已经有一个ID为 “my-shortcut” 的快捷方式。
        // 必须启用快捷方式。
        val pinShortcutInfo = ShortcutInfo.Builder(context, "my-shortcut").build()
    
        // 仅当需要通知您的应用程序用户允许固定快捷方式时,才创建 PendingIntent 对象。 
        // 请注意,如果固定操作失败,则不会通知您的应用。 我们假设应用程序已经实现了一个名为 
        //  createShortcutResultIntent() 的方法,该方法返回广播 itent。
        val pinnedShortcutCallbackIntent =         
    shortcutManager.createShortcutResultIntent(pinShortcutInfo)
    
        // 配置 intent,以便应用程序的广播接收器成功获得回调。有关详细信息,请参阅            
        // PendingIntent.getBroadcast()。
        val successCallback = PendingIntent.getBroadcast(context, /* request code */ 0,
                pinnedShortcutCallbackIntent, /* flags */ 0)
    
        shortcutManager.requestPinShortcut(pinShortcutInfo,
                successCallback.intentSender)
    }

    注意:另请参阅 support 库 API,isRequestPinShortcutSupported() 和 requestPinShortcut(),它们适用于 Android 7.1(API 级别 25)及更低版本。support 库回退到已弃用的 EXTRA_SHORTCUT_INTENT extra 以尝试固定过程。

     

    创建自定义快捷方式 activity


     

    图 2. 自定义应用快捷方式对话框 activity 的示例

    您还可以创建专门的 activity,帮助用户创建快捷方式,完成自定义选项和确认按钮。 图 2 显示了 Gmail 应用中此类 activity 的示例。

    在应用程序的清单文件中,将 ACTION_CREATE_SHORTCUT 添加到 activity 的 <intent-filter> 元素中。 当用户尝试创建快捷方式时,此声明会设置以下行为:

    1. 系统启动应用程序的特定 activity。
    2. 用户为快捷方式设置选项。
    3. 用户选择确认按钮。
    4. 您的应用使用 createShortcutResultIntent() 方法创建快捷方式。 此方法返回一个Intent,您的应用程序使用 setResult().将其中继回到先前执行的 activity。
    5. 您的应用程序调用用于创建自定义快捷方式的 activity 的 finish() 。

    同样,您的应用可以提示用户在安装后或第一次启动应用时将固定快捷方式添加到主屏幕。 此方法很有效,因为它可以帮助您的用户在普通工作流程中创建快捷方式。

     

    测试快捷方式


    要测试应用的快捷方式,请在具有支持快捷方式的启动器的设备上安装您的应用。 然后,执行以下操作:

    • 长按您应用的启动器图标,即可查看您为应用定义的快捷方式。
    • 点击并拖动快捷方式将其固定到设备的启动器。
    展开全文
  • 生成Jupyter Lab快捷方式

    万次阅读 2021-08-31 18:44:26
    Anaconda安装后,会在开始菜单中添加菜单项,但是这些菜单项中,没有Jupyter Lab快捷方式。 在实现前应该明确两点: 开始菜单是一个特殊文件夹,很多菜单项就是快捷方式。 在Windows中快捷方式是一种文件类型。创建...

    概述

    Anaconda安装后,会在开始菜单中添加菜单项,但是这些菜单项中,没有Jupyter Lab快捷方式。

    在实现前应该明确两点:

    • 开始菜单是一个特殊文件夹,很多菜单项就是快捷方式。
    • 在Windows中快捷方式是一种文件类型。创建快捷方式有多种方法,比较简单的方式就是复制已有快捷方式,然后修改相关属性。
      在这里插入图片描述

    实现

    复制快捷方式

    虽然没有Jupyter Lab快捷方式,但是有Jupyter Notebook快捷方式。

    • 找到开始菜单目录
      由于操作系统版本差异,获取方法各有不同!以下位置仅供参考,将下面的路径粘贴到资源管理器回车即可打开开始菜单Anaconda3目录。注意Program Data这个文件夹默认为隐藏,建议在文件资源管理器的查看中,勾选显示隐藏项目。
      Win10:
      %programdata%\Microsoft\Windows\Start Menu\Programs\Anaconda3 (64-bit)
      Win7:
      %appdata%\Microsoft\Windows\Start Menu\Programs\Anaconda3 (64-bit)
    • 复制Jupyter Notebook快捷方式

    编辑快捷方式

    • 打开复制好的Jupyter Notebook快捷方式的属性。将目标原值C:\ProgramData\Anaconda3\python.exe C:\ProgramData\Anaconda3\cwp.py C:\ProgramData\Anaconda3 C:\ProgramData\Anaconda3\python.exe C:\ProgramData\Anaconda3\Scripts\jupyter-notebook-script.py "%USERPROFILE%/"修改为C:\ProgramData\Anaconda3\python.exe C:\ProgramData\Anaconda3\cwp.py C:\ProgramData\Anaconda3 C:\ProgramData\Anaconda3\python.exe C:\ProgramData\Anaconda3\Scripts\jupyter-lab-script.py "%USERPROFILE%/"。即将jupyter-notebook-script.py修改为\jupyter-lab-script.py
    • 将快捷方式名称修改为Jupyter Lab
      在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    展开全文
  • 本文讲述如何在Ubuntu Linux 系统下添加程序的桌面快捷方式,添加程序启动器到应用程序列表,创建程序启动器到收藏夹,建立桌面快捷方式等操作,实现快速,方便的打开程序,搜索程序以及访问文件夹 建立文件夹桌面...

    本文讲述如何在Ubuntu Linux 系统下添加程序的桌面快捷方式,添加程序启动器到应用程序列表,创建程序启动器到收藏夹,建立桌面快捷方式等操作,实现快速,方便的打开程序,搜索程序以及访问文件夹

    建立文件夹桌面快捷方式

    对于windows 来说,只需要在目标文件夹鼠标右键,选择发送到桌面快捷方式就搞定了,Ubuntu 也不复杂,需要建立一个软链接,比如我要将 /home/qianqianjun/CODE 添加到桌面,那么我就执行下面的命令来:

    sudo ln -sT /home/qianqianjun/CODE ~/桌面/CODE快捷方式
    

    实现的效果如下所示:
    在这里插入图片描述

    建立程序启动器

    对于一个不能自动创建快捷方式的程序来说,启动它很麻烦,因为你要找到它所在的目录,然后运行它,有些还是.sh 结尾的文件,这时候需要启动终端来运行,运行期间终端不可以关闭,十分蛋疼,解决办法如下:我这里有一个AppImage 文件,双击即可运行。
    现在我想建立它的桌面快捷方式,我们记录下这个可执行文件所在的位置:/opt/软件名称.AppImage
    我们进入到桌面,创建一个.desktop 的启动器文件

    cd ~/桌面
    touch 软件名称.desktop
    vim 软件名称.desktop
    

    输入 a 进入编辑模式,输入下面的内容,注意这里的所有的地址要换成你电脑上对应的地址:

    [Desktop Entry]
    Encoding=UTF-8
    NAME=软件名称
    Name[zh_CN]=软件中文名称
    COMMENT=软件注释名称
    Exec=/opt/软件名称.AppImage
    Icon=/usr/share/icons/macOS11/apps/128/软件图标.png
    Terminal=False
    Type=Application
    startupNotify=False
    categories=Application;Development
    

    各个字段的意思大家看英文也能看个大概,启动器做出来也可以看到效果,这里不再赘述每一个字段什么含义了。(特别说一下,Icon 可以设置启动器的图标,支持很多种图片格式,去百度上下载一个图片用编辑软件修改一下就好,注意,图片要做成方的。)
    之后选择刚刚在桌面上创建的这个 desktop 文件,右键选择属性 --> 权限,勾选 “允许作为程序执行文件”,ok,大功告成,双击启动器,就可以打开程序了。

    将程序启动器添加到应用列表

    对于Ubuntu来说,有一个应用列表,这个列表有所有安装的软件快捷方式,如图所示:
    在这里插入图片描述
    经过寻找,确定了这个目录所在的位置是: /usr/share/applications,进入该文件夹,查看文件夹中的文件,如图所示:
    在这里插入图片描述
    可以看到这里有好多的desktop文件,确定是这里无疑了,那么我们如果想把程序启动器添加到应用列表中,只需要将来创建好的desktop 文件房间该目录即可

    sudo mv ~/桌面/软件名称.desktop  /usr/share/applications
    

    这时候你再看一下程序列表,可以看到刚刚安装的软件。

    将程序添加收藏夹

    这一步就比较简单了,打开程序列表,然后在启动器上右键,选择添加到收藏夹,就OK了。

    展开全文
  • Android应用快捷方式

    千次阅读 2017-09-06 17:18:55
    但在8.0的系统行为变更中指出,该广播变为私有的隐式广播,因此原来创建快捷方式的方法在8.0的系统上将不再有效,官方推荐我们使用ShortcutManager来创建应用快捷方式快捷方式应用场景及类型快捷方式应用场景...

    有的App会给用户提供快捷方式,8.0之前我们多是通过发送com.android.launcher.action.INSTALL_SHORTCUT 广播的方式来实现。但在8.0的系统行为变更中指出,该广播变为私有的隐式广播,因此原来创建快捷方式的方法在8.0的系统上将不再有效,官方推荐我们使用ShortcutManager来创建应用快捷方式。

    快捷方式应用场景及类型

    快捷方式应用场景

    Android 7.1起,开发者可以创建一些跳转到特定页面的快捷方式,常见的应用场景如:

    1. 地图App中为用户导航到特定位置
    2. 社交App中向某个好友发送消息
    3. 多媒体App中播放电视剧的下一集
    4. 游戏App中加载上次保存的状态

    快捷方式类型

    Static shortcuts

    静态快捷方式通过资源文件定义,并且打包到APK中,因此只能在更新App时才能修改此类快捷方式。

    Dynamic shortcuts

    动态快捷方式在App运行时使用ShortcutManager API定义,可以在运行时创建、修改和删除。

    Pinned shortcuts

    固定快捷方式也是在App运行时通过ShortcutManager API定义,App会弹出确认对话框来申请创建该快捷方式,如果用户允许,则此快捷方式将会显示在支持它的启动器(Launcher)上。

    一个App最多可以创建5个静态、动态快捷方式,对于固定快捷方式的数量则没有限制,但一些Launcher应用可能不会全部显示出所创建的动态或静态快捷方式。

    注意:虽然其他应用无法访问快捷方式的元数据,但Launcher应用可以,因此创建快捷方式时尽量不要涉及用户隐私。

    使用静态快捷方式

    应用场景

    1. 查看发送的消息
    2. 设置闹钟
    3. 显示用户当天的活动

    创建步骤

    1. 在AndroidManifest.xml中,找到启动Activity,即设置了 android.intent.action.MAINandroid.intent.category.LAUNCHER这两个Intent Filter的Activity。

    2. 为这个Activity设置元数据,并引用为其定义的快捷方式资源文件,如下:

      <manifest xmlns:android="http://schemas.android.com/apk/res/android"
               package="com.example.myapplication">
       <application ... >
         <activity android:name="Main">
           <intent-filter>
             <action android:name="android.intent.action.MAIN" />
             <category android:name="android.intent.category.LAUNCHER" />
           </intent-filter>
           <meta-data android:name="android.app.shortcuts"
                      android:resource="@xml/shortcuts" />
         </activity>
       </application>
      </manifest>
    3. 创建快捷方式的资源文件 res/xml/shortcuts.xml,其根元素为 <shortcuts>,它包含了一个快捷方式列表,每个快捷方式用 <shortcut>标签表示,每个快捷方式中又声明了快捷方式图标、描述、intent等信息,示例如下:

      <shortcuts xmlns:android="http://schemas.android.com/apk/res/android">
       <shortcut
         android:shortcutId="compose"
         android:enabled="true"
         android:icon="@drawable/compose_icon"
         android:shortcutShortLabel="@string/compose_shortcut_short_label1"
         android:shortcutLongLabel="@string/compose_shortcut_long_label1"
         android:shortcutDisabledMessage="@string/compose_disabled_message1">
         <intent
           android:action="android.intent.action.VIEW"
           android:targetPackage="com.example.myapplication"
           android:targetClass="com.example.myapplication.ComposeActivity" />
         <!-- If your shortcut is associated with multiple intents, include them
              here. The last intent in the list determines what the user sees when
              they launch this shortcut. -->
         <categories android:name="android.shortcut.conversation" />
       </shortcut>
       <!-- Specify more shortcuts here. -->
      </shortcuts>

      注意:如果某个快捷方式配置了多个Intent,则点击快捷方式时会跳到最后一个Intent对应的界面,然后按回退栈的方式,如果点击返回键,则返回倒数第二个Intent对应的界面,跟startActivities(Intent[] intents)效果类似。

    4. 效果图,有点像iOS的3D Touch(来自官方文档)

      这里写图片描述

    使用动态快捷方式

    应用场景

    1. 给某人打电话
    2. 导航到某个位置
    3. 查看游戏的当前分数

    创建方法

    1. Publish: 使用 setDynamicShortcuts() 来重定义快捷方式列表,或者使用 addDynamicShortcuts() 来扩展已经存在的快捷方式列表。
    2. Update: 使用 updateShortcuts() 方法更新快捷方式。
    3. Remove: 使用 removeDynamicShortcuts()来删除一组快捷方式,或者使用removeAllDynamicShortcuts()来删除所有的快捷方式。

    创建动态快捷方式的代码示例:

    ShortcutManager shortcutManager = getSystemService(ShortcutManager.class);
    
    ShortcutInfo shortcut = new ShortcutInfo.Builder(this, "id1")
        .setShortLabel("Web site")
        .setLongLabel("Open the web site")
        .setIcon(Icon.createWithResource(context, R.drawable.icon_website))
        .setIntent(new Intent(Intent.ACTION_VIEW,
                       Uri.parse("https://www.mysite.example.com/")))
        .build();
    
    shortcutManager.setDynamicShortcuts(Arrays.asList(shortcut));

    使用固定快捷方式

    应用场景

    在8.0或更高的系统上可以使用固定快捷方式,此类快捷方式在支持它的Launcher上表现为独立的图标,如图(来自官网)所示:

    这里写图片描述

    当尝试创建此种快捷方式时,会弹出申请对话框让用户确定,如果用户没有同意,则Launcher会取消创建快捷方式的请求。

    创建步骤

    1. 首先使用 isRequestPinShortcutSupported() 方法来检查设备默认的Launcher应用是否支持固定快捷方式。

    2. 创建ShortcutInfo 对象,根据快捷方式是否存在有两种不同的处理方式:

      1. 如果快捷方式已经存在,则创建的ShortcutInfo 对象仅包含快捷方式ID,系统会将其他信息自动关联到此快捷方式。
      2. 如果快捷方式不存在,则创建的ShortcutInfo 对象包含快捷方式ID、Intent、label等信息。
    3. 调用requestPinShortcut()方法尝试在设备Launcher上创建快捷方式,同时可以传入一个PendingIntent,当创建快捷方式成功时会通知应用。

      注意:如果用户不允许创建快捷方式,则应用不会收到回调。当快捷方式创建好之后,可以使用 updateShortcuts() 方法更新其内容。

    示例代码:

    ShortcutManager mShortcutManager =
            context.getSystemService(ShortcutManager.class);
    
    if (mShortcutManager.isRequestPinShortcutSupported()) {
        // Assumes there's already a shortcut with the ID "my-shortcut".
        // The shortcut must be enabled.
        ShortcutInfo pinShortcutInfo =
                new ShortcutInfo.Builder(context, "my-shortcut").build();
    
        // Create the PendingIntent object only if your app needs to be notified
        // that the user allowed the shortcut to be pinned. Note that, if the
        // pinning operation fails, your app isn't notified. We assume here that the
        // app has implemented a method called createShortcutResultIntent() that
        // returns a broadcast intent.
        Intent pinnedShortcutCallbackIntent =
                mShortcutManager.createShortcutResultIntent(pinShortcutInfo);
    
        // Configure the intent so that your app's broadcast receiver gets
        // the callback successfully.
        PendingIntent successCallback = PendingIntent.getBroadcast(context, 0,
                pinnedShortcutCallbackIntent, 0);
    
        mShortcutManager.requestPinShortcut(pinShortcutInfo,
                successCallback.getIntentSender());
    }

    兼容老版本

    为了支持Android 7.1(API Level=25)及之前的版本,可以使用Android兼容库,参考ShortcutManagerCompat

    展开全文
  • 创建快捷方式:ln -s 源目录 目标快捷方式 (目标快捷方式不需要先创建文件夹 , 会自动创建) 查看快捷方式的指向(源文件) : ls -l
  • C# 创建快捷方式 / 取快捷方式目标

    千次阅读 2015-06-10 18:48:59
    快捷方式在Win32上应用的非常之多,比如某个软件安装完毕后会创建一些快捷方式 到特定目录下,那么在.NET上我并未发现有什么托管类可以操作快捷方式,那么我们 又必须要使用它 为此我预先写了一份快捷方式应用的...
  • Android快捷方式Demo

    热门讨论 2014-07-17 11:24:05
    Android 为应用创建、删除桌面快捷方式;请参考博客:http://blog.csdn.net/jjmm2009/article/details/37902949
  • C# 创建桌面快捷方式

    热门讨论 2011-12-17 11:32:56
    C#创建桌面快捷方式 创建桌面快捷方式 桌面快捷方式 快捷方式 两种方式:1.通过COM组件创建快捷方式;2.通过纯代码创建快捷方式
  • 前言 Android shortcuts算是比较老...这样我们在使用的时候会方便许多,个人认为这种快捷方式更适合静态使用,比如设置等一些和数据没有交互的地方,虽然动态注册可以做,但是感觉不太友好。 1.新建项目 因为这个...
  • 建立windows文件夹快捷方式

    千次阅读 2019-11-05 11:05:14
    一、新建快捷方式选路径 鼠标右击新建快捷方式 选择路径,如图: 确定好路径后点击下一步,如图: 取一个有意义的名字,如图: 完成啦! 二、找到文件夹建立快捷方式 1、找到你要建立快捷方式的文件夹,例如: 2...
  • View中添加快捷方式

    热门讨论 2012-01-08 21:16:50
    View中添加快捷方式
  • Android O(8.0)创建桌面快捷方式

    万次阅读 热门讨论 2017-08-09 17:18:54
    Android O、Android 8.0、版本适配、桌面快捷方式
  • 命令行创建快捷方式

    千次阅读 2020-08-04 23:06:20
    快捷方式 快捷方式是一种超链接,它能定位到指定的资源并打开它,无论是在app中还是桌面应用开发中都扮演着重要的角色 我们都知道可以通过windows图形界面创建我们的快捷方式,那么你知道如何用命令行创建应用快捷...
  • linux 快捷方式创建命令

    千次阅读 2018-10-26 09:55:42
    Linux 下快速创建桌面快捷方式 方便以后可以快速的在 Linux 下创建桌面快捷键,特此记录下。 一 在Linux 中桌面快捷键都放在哪 在 Linux 下所有的桌面快捷方式都放在/usr/share/applications/文件夹中 快捷...
  • Android快捷方式解密

    千次阅读 多人点赞 2015-11-16 17:18:24
    Android快捷方式解密Android快捷方式作为Android设备的杀手锏技能,一直都是非常重要的一个功能,也正是如此,各种流氓App也不断通过快捷方式霸占着这样一个用户入口。同时,各大国产ROM和Luncher的崛起,让这个桌面...
  • Android创建桌面快捷方式

    千次阅读 2018-03-26 16:36:01
      背景 ... 添加桌面图标快捷方式代码非常简单,在API 26(Android O)以下的版本,并没有提供API进行创建桌面快捷方式,但是用户可以通过广播的方式创建桌面快捷方式。在API 26(Android O...
  • 大家好 我从网上搜来了两个方法 一个是添加快捷方式 另一个删除快捷方式 可实际用的时候发现只可以添加快捷方式 而无法删除快捷方式 请问如何才能删除快捷方式
  • android快捷方式判断

    2015-01-15 01:08:28
    android快捷方式生成之后,如何判断android桌面已经生成,测试了主要是一些机子不可以测试得到,比如华为
  • // 获取快捷方式的目标文件,并删除无效快捷方式和目标文件不在系统盘的快捷方式 BOOL GetExePath(LPCTSTR lnkPath, LPTSTR exePath, LPTSTR Arguments) { DWORD dwAttribute = ::GetFileAttributes(lnkPath); if...
  • Linux下添加桌面快捷方式

    千次阅读 2019-03-23 03:50:15
    最近使用了一下Linux系统,发现许多应用下载下来是压缩包,虽然解压后打开主程序即可使用,但没有快捷方式还是很不方便。与Windows不同,Linux添加快捷方式没那么简单。下面以Kali Linux为例演示。 1,打开终端 2...
  • Deepin创建应用快捷方式

    千次阅读 2020-08-14 15:57:36
    Deepin创建应用快捷方式
  • 批处理创建桌面快捷方式

    千次阅读 2019-01-05 14:56:18
    一、VB脚本创建桌面快捷方式 1.创建lnk快捷方式 Set WshShell = WScript.CreateObject("WScript.Shell") Rem 特殊文件夹桌面 strDesktop = WshShell.SpecialFolders("Desktop") Rem ShortCut...
  • linux创建快捷方式

    千次阅读 2018-09-25 16:07:35
    快捷方式 命令ln-s源目录目标快捷方式比如你要在目录/etc/www下面, 建立/usr/share/phpmyadmin文件夹(或文件)的快捷方式, 如下ln-s/usr/share/phpmyadmin/etc/www 命令 ln -s 源目录 目标快捷...
  • Ubuntu 中创建 PyCharm 桌面快捷方式并固定到快速启动栏 Ubuntu 中创建 PyCharm 桌面快捷方式并固定到快速启动栏 1. 创建 pycharm.desktop 文件 2. 添加可执行权限并信任 3. 固定 PyCharm 到快速启动栏 ...
  • Ubuntu18.04添加桌面快捷方式

    万次阅读 2018-08-26 21:42:02
    添加快捷方式,超简单 这里以google-chrome为例 我在网上看了好几篇关于添加快捷方式的方法,感觉都比较麻烦,不知道是旧版Ubuntu的原因还是什么。 1.打开/usr/share/applications/ 2.找到自己要添加的应用,...
  • IDEA 代码抛异常快捷方式

    万次阅读 多人点赞 2017-08-12 10:29:31
    IDEA 代码抛异常快捷方式
  • 2. 为其他应用添加应用程序的快捷方式(以微信为例) String packageName = "com.tencent.mm";//以微信为例 PackageManager pManager = context.getPackageManager(); Intent launchIntent = pMa
  • Android 8.0 创建桌面快捷方式

    千次阅读 2018-08-28 15:36:29
    1. 前言:公司有个给app创建桌面快捷方式的功能。 有一天,测试来说,有款手机,点击快捷方式,无反应。    2.思考:大多数手机是好的,考虑是兼容性问题。 1)经查看,问题机是 华为mate9 8.0系统.(有快捷...
  • Ubuntu创建桌面快捷方式

    千次阅读 2014-06-18 22:06:09
    1、默认情况下,ubuntu会将自动安装的软件快捷方式保存在/usr/share/applications目录下,dash home中每个图标对应其中的一个配置文件,如果我们要创建桌面快捷方式,只需要右键-复制-桌面 就Ok了。手动安装的软件则...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 417,431
精华内容 166,972
关键字:

快捷方式