Google Glass GDK Hello World Immersion Activity

时间:2015-02-04 07:19:19

标签: google-glass google-gdk

步骤,我已经习惯创建我的第一个Google Glass GDK应用

New Project> Application name, company domain> Next> Glass (Glass Development Kit Preview (Google Inc.) (API 19))> Next> Immersion Activity

ImmersionActivity.java:

public class ImmersionActivity extends Activity {

    /**
     * {@link CardScrollView} to use as the main content view.
     */
    private CardScrollView mCardScroller;

    private View mView;

    @Override
    protected void onCreate(Bundle bundle) {
        super.onCreate(bundle);

        mView = buildView();

        mCardScroller = new CardScrollView(this);
        mCardScroller.setAdapter(new CardScrollAdapter() {
            @Override
            public int getCount() {
                return 1;
            }

            @Override
            public Object getItem(int position) {
                return mView;
            }

            @Override
            public View getView(int position, View convertView, ViewGroup parent) {
                return mView;
            }

            @Override
            public int getPosition(Object item) {
                if (mView.equals(item)) {
                    return 0;
                }
                return AdapterView.INVALID_POSITION;
            }
        });
        // Handle the TAP event.
        mCardScroller.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                // Plays disallowed sound to indicate that TAP actions are not supported.
                AudioManager am = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
                am.playSoundEffect(Sounds.DISALLOWED);
            }
        });
        setContentView(mCardScroller);
    }

    @Override
    protected void onResume() {
        super.onResume();
        mCardScroller.activate();
    }

    @Override
    protected void onPause() {
        mCardScroller.deactivate();
        super.onPause();
    }

    /**
     * Builds a Glass styled "Hello World!" view using the {@link CardBuilder} class.
     */
    private View buildView() {
        CardBuilder card = new CardBuilder(this, CardBuilder.Layout.TEXT);

        card.setText(R.string.hello_world);
        return card.getView();
    }

}

的Manifest.xml:

    <activity
        android:name=".ImmersionActivity"
        android:icon="@drawable/ic_glass_logo"
        android:label="@string/title_activity_immersion" >
        <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" />
    </activity>

voice_trigger.xml:

 <trigger command="SHOW_ME_A_DEMO" />

现在,我有understood,我们可以通过触发器run命令“voiceSHOW ME A DEMO此应用,这是对还是错?

有没有办法使用Android Studio在Android模拟器上运行Glass GDK应用程序?

2 个答案:

答案 0 :(得分:1)

  

现在,我明白了,我们可以通过触发语音命令“显示我的演示”运行此应用程序,这是对还是错?

这是对的。你甚至可以配置这个触发器并使用other commands

  

有没有办法在Android模拟器上使用Android Studio运行Glass GDK应用程序?

不,你不能。 Android虚拟设备管理器上仅提供平板电脑,手机,佩戴(手表)和电视设备。

答案 1 :(得分:1)

  

现在,我明白了,我们可以通过触发语音命令“显示我的演示”运行此应用程序,这是对还是错?

是的,您可以在触发器设置为command = "Show_me_a_demo"

的情况下运行应用

但是有了这个,你只能从说话菜单中运行它。 我会把它变成

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

你可以使用你想要的任何关键词,但是它会显示在应用程序菜单和说话菜单上。显示的名称将是您为应用命名的任何名称。

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

也是一个好主意

到你的清单。确保自定义命令有效

目前没有可供使用的玻璃模拟器。