Search code examples
androidgoogle-glassgoogle-gdk

Why doesn't this Glass app appear in the Glass Launcher?


There is an Activity with data pulled from the remote API. The Manifest file looks like this

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.myapp.glass"
    android:versionCode="1"
    android:versionName="1.0">

    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="com.google.android.glass.permission.DEVELOPMENT" />

    <uses-sdk
        android:minSdkVersion="15"
        android:targetSdkVersion="15" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme">

        <activity
            android:name=".MainActivity"
            android:enabled="true"
            android:label="@string/title_activity_main">

            <intent-filter>
                <action android:name="com.google.android.glass.action.VOICE_TRIGGER" />
            </intent-filter>

            <meta-data
                android:name="com.google.android.glass.VoiceTrigger"
                android:resource="@xml/voice_trigger_start" />
        </activity>
    </application>
</manifest>

The filevoice_trigger_start works and the command from it is properly detected.

<?xml version="1.0" encoding="utf-8"?>
<trigger command="LISTEN_TO" />

The app does not crash, it works Ok, but it does not appear in the Glass Launcher. Look at the images.

All other apps I instal via the Market are here.

Why?

PS. I install my demo app via the console. It's not live app.


Solution

  • LISTEN_TO is one of the existing commands. The expected behavior is you'll see "listen to" menu and when you tap, you'll see your app under that menu.

    <?xml version="1.0" encoding="utf-8"?>
    <trigger command="LISTEN_TO" />
    

    If you want a custom command, try keyword.

    voice_trigger_start.xml

    <trigger keyword="@string/your_custom_command" />
    

    Edit

    Based on your comments, try adding this in your activity tag in your manifest.

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

    You might need to reboot your Glass.