在启动器中显示的快捷方式静态错误

时间:2017-11-12 18:27:47

标签: android android-static-shortcuts

我正在关注制作快捷方式的官方文档,以便在启动器中显示。当我开始测试时,我得到了这个错误。我该如何解决?我做错了什么?

Error:(6, 23) No resource found that matches the given name (at 'icon' with value '@drawable/compose_icon').
Error:(8, 36) No resource found that matches the given name (at 'shortcutLongLabel' with value '@string/compose_shortcut_long_label1').

我的代码就是这个

<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. -->

compileSdkVersion 25
buildToolsVersion "25.0.2"
defaultConfig {

    minSdkVersion 15
    targetSdkVersion 25

1 个答案:

答案 0 :(得分:0)

您将需要提供有效的图标和字符串资源。似乎您正在直接尝试documentation中的示例。编译器不会在此文件中指出错误,因此您需要谨慎使用所提到的资源。

具体来说,在字符串中定义compose_shortcut_short_label1compose_shortcut_long_label1compose_disabled_message1,并使用适当的名称以及compose_icon的有效可绘制资源。

还要相应地更改android:targetPackageandroid:targetClass属性。