Google Glass的Hello World

时间:2014-07-17 07:37:00

标签: android google-glass android-resources google-gdk android-remoteview

我正在尝试为Google Glass构建一个简单的Hello World GDK程序。我到处都查了一下,但我找到的所有样本都使用了“时间线管理器”,在XE 16之后被谷歌删除了。

我要做的是创建一张在中间显示文本(Hello world!)的实时卡片。 我试图修改HERE中的代码(HuskyHuskie的答案)和HERE(IsabelHM的答案)

然而,无论我做了什么,即使控制台显示程序安装在设备上,也没有选项或语音命令出现在玻璃上。

我最常修改的是取出TimelineManager部分并替换

mLiveCard = mTimelineManager.createLiveCard(LIVE_CARD_ID);mLiveCard = new LiveCard(this,LIVE_CARD_ID);

另外,我对Android比较陌生。我不太明白资源中缺少R.id.XXXX和R.layout.XXXX。你需要在Manifest中定义它还是其他什么?

以下是onStartCommand方法:

@Override
public int onStartCommand(Intent intent, int flags, int startId) {
            RemoteViews aRV = new RemoteViews(this.getPackageName(),
            R.layout.card_text);
    if (mLiveCard == null) {
       // mLiveCard = mTimelineManager.createLiveCard(LIVE_CARD_ID);
        mLiveCard = new LiveCard(this,LIVE_CARD_ID);

        aRV.setTextViewText(R.id.main_text, INTRO);
        mLiveCard.setViews(aRV);



        Intent mIntent = new Intent(this, MainActivity.class);
        mIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK |    Intent.FLAG_ACTIVITY_CLEAR_TASK);
        mLiveCard.setAction(PendingIntent.getActivity(this, 0, mIntent, 0));
        mLiveCard.publish(LiveCard.PublishMode.REVEAL);
    } 
    return START_STICKY;
}

2 个答案:

答案 0 :(得分:1)

好的,我按照THIS

开始工作了

请注意,清单并不完全正确。在XE16更新后,您需要在Manifest中添加此行:

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

请参阅帖子HERE以供参考。

答案 1 :(得分:0)

我强烈建议您使用GitHub上的官方样本并阅读我们的documentations,因为所有这些警告都会得到解释和处理。

如果您使用的是最新版本的Android Studio,您还可以通过我们的可用模板轻松创建新项目:LiveCardImmersion

  1. 打开Android Studio
  2. 创建新项目
  3. 输入您的项目信息:应用程序名称,包名称等
  4. 选择Glass作为外形:除非您想为这些设备进行开发,否则请务必取消选择所有其他外形。
  5. 选择Immersion ActivitySimple Live Card模板
  6. 在Glass上构建并运行新的Hello World项目!