Android 12 创建桌面快捷方式:Java 代码示例 - 完整指南
在 Android 12 中,可以使用以下代码来创建桌面快捷方式:\n\njava\nimport android.content.Intent;\nimport android.os.Build;\nimport android.os.Bundle;\nimport android.support.v7.app.AppCompatActivity;\n\npublic class MainActivity extends AppCompatActivity {\n\n @Override\n protected void onCreate(Bundle savedInstanceState) {\n super.onCreate(savedInstanceState);\n setContentView(R.layout.activity_main);\n\n if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {\n ShortcutManager shortcutManager = getSystemService(ShortcutManager.class);\n\n ShortcutInfo shortcut = new ShortcutInfo.Builder(this, "shortcut_id")\n .setShortLabel("Shortcut")\n .setLongLabel("Create Shortcut")\n .setIcon(Icon.createWithResource(this, R.drawable.icon))\n .setIntent(new Intent(this, MainActivity.class)\n .setAction(Intent.ACTION_MAIN))\n .build();\n\n shortcutManager.setDynamicShortcuts(Arrays.asList(shortcut));\n }\n }\n}\n\n\n这段代码使用了 ShortcutManager 来创建桌面快捷方式,并使用 ShortcutInfo.Builder 来设置快捷方式的属性,如标签、图标和意图。在这个例子中,将快捷方式的图标设置为R.drawable.icon,并将点击快捷方式后打开的 Activity 设置为 MainActivity。\n\n请确保在 AndroidManifest.xml 文件中添加必要的权限和 ShortcutManager 的声明:\n\nxml\n<manifest xmlns:android="http://schemas.android.com/apk/res/android"\n package="com.example.myapplication">\n\n <uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" />\n\n <application ...>\n ...\n <activity android:name=".MainActivity">\n ...\n </activity>\n\n <meta-data\n android:name="android.app.shortcuts"\n android:resource="@xml/shortcuts" />\n </application>\n\n</manifest>\n\n\n然后,创建一个名为shortcuts.xml的文件,将其保存在 res/xml 目录下,用于定义快捷方式。例如:\n\nxml\n<shortcuts xmlns:android="http://schemas.android.com/apk/res/android">\n <shortcut\n android:shortcutId="shortcut_id"\n android:enabled="true"\n android:icon="@drawable/icon"\n android:shortcutShortLabel="@string/shortcut_short_label"\n android:shortcutLongLabel="@string/shortcut_long_label"\n android:shortcutDisabledMessage="@string/shortcut_disabled_message">\n <intent\n android:action="android.intent.action.MAIN"\n android:targetPackage="com.example.myapplication"\n android:targetClass="com.example.myapplication.MainActivity" />\n </shortcut>\n</shortcuts>\n\n\n确保将@string/shortcut_short_label、@string/shortcut_long_label 和@string/shortcut_disabled_message 替换为相应的字符串资源。\n\n这样,当你运行应用程序并点击按钮时,将在桌面上创建一个新的快捷方式。
原文地址: https://www.cveoy.top/t/topic/pKdj 著作权归作者所有。请勿转载和采集!