Home > OS >  Google Assistant Android Studio Plugin unable to recognize shortcuts.xml
Google Assistant Android Studio Plugin unable to recognize shortcuts.xml

Time:10-25

I'm using Android Studio Chipmunk 2021.2.1 Patch 1. I followed this codelab to implement Google Assistant App Actions. But for some reason, it's giving me the following error, whenever I try to build the app or try to use Google Assistant Android Studio Plugin:-

There are no resources listed in your Android Manifest matching to shortcuts.xml or actions.xml.

Here is my Android manifest file:-

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    package="com.devrel.android.fitactions">

    <!-- Needed permission to start the FitTrackingService in foreground mode -->
    <uses-permission android:name="android.permission.FOREGROUND_SERVICE" />

    <application
        android:name="com.devrel.android.fitactions.FitApp"
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme"
        tools:ignore="GoogleAppIndexingWarning">
        <meta-data
            android:name="android.app.shortcuts"
            android:resource="@xml/shortcuts" />
        <activity
            android:name="com.devrel.android.fitactions.FitMainActivity"
            android:exported="true"
            android:label="@string/app_name"
            android:launchMode="singleTask"
            android:theme="@style/AppTheme.NoActionBar">

            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>

            <intent-filter>
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>

        </activity>

        <service
            android:name="com.devrel.android.fitactions.tracking.FitTrackingService"
            android:enabled="true"
            android:exported="true" />

    </application>

</manifest>

And here is my shortcuts.xml in res/xml folder:-

<?xml version="1.0" encoding="utf-8"?>
<shortcuts xmlns:android="http://schemas.android.com/apk/res/android">

    <!-- Add Start Exercise intent parameter shortcuts -->
    <shortcut
        android:shortcutId="running"
        android:shortcutShortLabel="@string/activity_running">
        <capability-binding android:key="actions.intent.START_EXERCISE">
            <parameter-binding
                android:key="exercise.name"
                android:value="@array/runningSynonyms" />
        </capability-binding>
    </shortcut>

    <shortcut
        android:shortcutId="walking"
        android:shortcutShortLabel="@string/activity_walking">
        <capability-binding android:key="actions.intent.START_EXERCISE">
            <parameter-binding
                android:key="exercise.name"
                android:value="@array/walkingSynonyms" />
        </capability-binding>
    </shortcut>

    <shortcut
        android:shortcutId="cycling"
        android:shortcutShortLabel="@string/activity_cycling">
        <capability-binding android:key="actions.intent.START_EXERCISE">
            <parameter-binding
                android:key="exercise.name"
                android:value="@array/cyclingSynonyms" />
        </capability-binding>
    </shortcut>

    <!-- Add START_EXERCISE capability -->


    <!-- Add Stop Exercise intent parameter shortcuts -->


    <!-- Add STOP_EXERCISE capability-->
    <capability android:name="actions.intent.START_EXERCISE">
        <intent
            android:action="android.intent.action.VIEW"
            android:targetClass="com.devrel.android.fitactions.FitMainActivity"
            android:targetPackage="com.myapp.android.fitactions">
            <parameter
                android:name="exercise.name"
                android:key="exerciseType" />
        </intent>
    </capability>

</shortcuts>

I'm using MacOS Monterey with Apple M1 Pro chip.

CodePudding user response:

You can try to using the Stable version of Android Studio. And double check the path of shortcuts.xml, it only work if you put it in the main resources.

CodePudding user response:

I solved this by upgrading the Gradle plugin to the latest version (7.2.1).

In Android Studio, from Tools menu click AGP Upgrade Assistant and simply follows the instructions.

  • Related