How to create an Android Wear app with the note-ta

2020-02-13 01:13发布

问题:

I can't seem to figure out how to create an Android Wear application which would allow me to use it to take notes via built-in voice actions. I declare the intent filter as stated in Adding Voice Capabilities:

<intent-filter>
    <action android:name="android.intent.action.SEND"/>
    <category android:name="com.google.android.voicesearch.SELF_NOTE"/>
</intent-filter>

However, that does nothing, and the Wear app on the phone doesn't allow me to set the application as the default note-taking app. What do I need to do to make that happen?

回答1:

The trick is to include the category android.intent.category.DEFAULT, as stated in the documentation on intents. If it is missing, no implicit intents can be received by the app. Besides that, it is important to include the MIME type text/plain. The complete declaration is as follows:

<intent-filter>
    <action android:name="android.intent.action.SEND"/>
    <category android:name="android.intent.category.DEFAULT"/>
    <category android:name="com.google.android.voicesearch.SELF_NOTE"/>

    <data android:mimeType="text/plain"/>
</intent-filter>


回答2:

@Malcolm answer with add this line also. It will be working fine.

<action android:name="com.google.android.gm.action.AUTO_SEND" />

The full part is

<intent-filter>
<action android:name="android.intent.action.SEND"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="com.google.android.voicesearch.SELF_NOTE"/>
<action android:name="com.google.android.gm.action.AUTO_SEND" />
<data android:mimeType="text/plain"/>