由于错误“未安装应用程序”,始终禁用快捷方式

时间:2019-03-11 14:26:39

标签: android

首先,我在这里阅读了其他解决方案的尝试,但是由于某些原因,它们的修复程序对我不起作用。

我的快捷方式XML如下:

<?xml version="1.0" encoding="utf-8"?>
<shortcuts xmlns:android="http://schemas.android.com/apk/res/android">
    <shortcut
        android:enabled="true"
        android:icon="@drawable/ic_shortcut_tinted"
        android:shortcutId="shortcut"
        android:shortcutLongLabel="@string/shortcut_longLabel"
        android:shortcutShortLabel="@string/shortcut_shortLabel"
        android:shortcutDisabledMessage="@string/shortcut_disabledMessage">
        <intent
            android:action="android.intent.action.VIEW"
            android:targetClass="de.example.exampleApp.exampleClass"
            android:targetPackage="de.example.exampleApp" />
        <categories android:name= "android.shortcut.example" />
    </shortcut>
</shortcuts>

我在AndroidManifest文件中的相关代码如下:

<activity
            android:name=".common.ui.activities.MainActivity"
            android:exported="true">
            <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>

我确保在build.gradle中,ApplicationId为de.example.exampleApp

我不知道该怎么办。如果有任何关系,我可以在Genymotion模拟器上而不是真实的设备上测试我的应用。

1 个答案:

答案 0 :(得分:0)

好吧,看来我忽略了只能建立Activities快捷方式的信息(例如android:targetClass必须是Activity

作为解决方案,我使用了一种hacky(?)解决方案,您可以看到here