Malcolm
Malcolm

Reputation: 41510

How to create an Android Wear app with the note-taking voice action?

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?

Upvotes: 3

Views: 1027

Answers (2)

Mohamed Ibrahim
Mohamed Ibrahim

Reputation: 851

@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"/>

Upvotes: 2

Malcolm
Malcolm

Reputation: 41510

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>

Upvotes: 5

Related Questions