2014-09-10 3 views
0

У меня проблема с созданием базового приложения для Google Glass на основе этого tutorial. У меня 2 класса. Я следовал точно так же, как и учебник, но я не мог найти его в Google Glass. Я попробовал из «Ок стекла», но я тоже не смог его найти. Я создал 2 класса, первый - HelloWorldActivity.java. Этот класс является классом Activity. Вот HelloWorldActivity.javaHello World в Google Glass

public class HelloWorldActivity extends Activity { 


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

    Card myCard = new Card(this); 
    myCard.setText("Hello, World!"); 
    myCard.setFootnote("First Glassware for Glass"); 
    View cardView = myCard.getView();  
    // Display the card we just created 
    setContentView(cardView); 
} 


} 

Второй HelloGlass.java Этот класс является сервис класс, который будет распознавать голосовые команды.

public class HelloGlass extends Service { 

@Override 
public IBinder onBind(Intent intent) { 
    // TODO Auto-generated method stub 
    return null; 
} 

public int onStartCommand(Intent intent, int flags, int startId) { 

    Intent i = new Intent(this, HelloWorldActivity.class); 
    i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
    startActivity(i); 
    return START_STICKY; 
    } 
} 

Я создал необходимые файлы xml, включая voice_trigger_start.xml. Вот манифест andorid

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

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

     <application 
      android:allowBackup="true" 
      android:icon="@drawable/ic_launcher" 
      android:label="@string/app_name" > 
      <activity 
       android:name=".HelloWorldActivity" 
       android:label="@string/app_name" 
       android:enabled="true" > 
      </activity> 
      <service 
       android:name="com.app.helloglass.HelloGlass" 
       android:enabled="true" 
       android:exported="true" 
       android:icon="@drawable/ic_launcher" 
       android:label="@string/app_name" > 
       <intent-filter> 
        <action android:name="com.google.android.glass.action.VOICE_TRIGGER" /> 
       </intent-filter> 
       <!-- Voice command found in res/xml/voice_trigger_start --> 
       <meta-data 
        android:name="com.google.android.glass.VoiceTrigger" 
        android:resource="@xml/voice_trigger_start" /> 
      </service> 
     </application> 

    </manifest> 

Кто-нибудь знает, что я пропустил? Я попытался запустить его, но я не мог его найти.

+0

вы можете обновить свой вопрос и показать файл voice_trigger_start.xml , пожалуйста? – Prisoner

ответ

1

Edit:

После добавления разрешения, голосовая команда отлично работает, но приложение падает, потому что имя пакета в манифесте неправильно.

See the whole update project on my GitHub.

The tutorial использует команду пользовательских голосовых команд. Вам нужно это разрешение в манифесте:

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

Пожалуйста, см Why is my voice command missing from the ok glass menu in XE16? а также https://developers.google.com/glass/develop/gdk/voice

Не могли бы вы попробовать этот манифест:

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

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

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

     <application 
      android:allowBackup="true" 
      android:icon="@drawable/ic_launcher" 
      android:label="@string/app_name" > 
      <activity 
       android:name=".HelloWorldActivity" 
       android:label="@string/app_name" 
       android:enabled="true" > 
      </activity> 
      <service 
       android:name="com.app.helloglass.HelloGlass" 
       android:enabled="true" 
       android:exported="true" 
       android:icon="@drawable/ic_launcher" 
       android:label="@string/app_name" > 
       <intent-filter> 
        <action android:name="com.google.android.glass.action.VOICE_TRIGGER" /> 
       </intent-filter> 
       <!-- Voice command found in res/xml/voice_trigger_start --> 
       <meta-data 
        android:name="com.google.android.glass.VoiceTrigger" 
        android:resource="@xml/voice_trigger_start" /> 
      </service> 
     </application> 

    </manifest> 
+0

Привет, я нашел ответ. FIrst из всех, есть someonle также создать приложение для зелёного стекла (https://github.com/DasCody/Hello-Glass). Как я помню, они используют timeLineManager, но поскольку timeLinemanager больше не существует, я должен изменить его на LiveCard. – eng

+1

Рад, что вы нашли ответ. Если вам все еще интересно, что случилось с учебником, вы можете проверить https://github.com/prt2121/HelloGlass. Я просто начал работать. – pt2121

+0

@EntryLevelDev Привет, надеюсь, вы не возражаете, я спрашиваю, но я пытаюсь объединить проект Glass и являюсь новичком в Android. У нас есть несколько пар Glass на работе, и я хотел бы кое-что получить. Я пытаюсь запустить голосовой пуск в меню, в идеале - «ok glass», а затем из любого из вариантов он начнет другую деятельность, которая является видеопроигрывателем. Могу ли я дать совет, где я ошибаюсь? У меня есть рабочее меню панели и работа в видеопланере, но отделяются друг от друга и теперь немного беспорядок. Любые советы приветствуются! https://github.com/tetreault/HelloGlass – SMT