android桌面快捷方式跳转到指定activity

AndroidManifest.xml 应用主入口配置:

        <activity
            android:name="com.*.cust.contacts.MainActivity"
            android:exported="true"
            android:label="@string/app_name"
            android:screenOrientation="portrait" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <!-- 自己定义的action,通过自己定义的action能够应用内调用 -->
                <action android:name="*.intent.action.SHORTCUT" />

                <category android:name="android.intent.category.LAUNCHER" />
                <!-- 必须加上这个。否则无法直接使用自定的action -->
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

创建快捷方式:

    // 自己定义action
    Intent intent = new Intent("*.intent.action.SHORTCUT");
    Bundle bundle = new Bundle();
    // 能够依据传递參数运行对应操作
    bundle.putString("needgoto", "*activity");
    intent.putExtras(bundle);
    // 创建桌面快捷方式
    Intent shortcutintent = new Intent("com.android.launcher.action.INSTALL_SHORTCUT");
    // 是否同意反复创建
    shortcutintent.putExtra("duplicate", true);
    // 须要显示的名称
    shortcutintent.putExtra(Intent.EXTRA_SHORTCUT_NAME, getString(R.string.app_name_1));
    // 快捷图片
    Parcelable icon = Intent.ShortcutIconResource.fromContext(getApplicationContext(), R.drawable.ic_launcher);
    shortcutintent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, icon);
    // 点击快捷图片,运行的程序主入口
    shortcutintent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, intent);
    // 发送广播运行操作
    sendBroadcast(shortcutintent);


posted @   yxwkaifa  阅读(1714)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
点击右上角即可分享
微信分享提示