I start developing Google Glass app with GDK .
I use Eclipse with Android SDK Manager to install the GDK.
After that, I import the Google Glass project following the steps mentioned here:
- Click File > New Project > Android Sample Project
- Select Glass Development Kit as the build target and click Next.
- Select the Timer sample and click Finish.
- In the Eclipse Package Explorer, right click the sample and select Run as > Android Application with Glass connected to your development system.
The Google Glass (version XE12) is connected, but nothing shows up. Then, I follow another tutorial online to launch the App manually using an adb
command:
./adb shell am start -n com.google.android.glass.sample.timer/.MenuActivity
But the result is a Permission Denial:
$ ./adb shell am start -n com.google.android.glass.sample.timer/.MenuActivity
Starting: Intent { cmp=com.google.android.glass.sample.timer/.MenuActivity }
java.lang.SecurityException: Permission Denial: starting Intent { flg=0x10000000 cmp=com.google.android.glass.sample.timer/.MenuActivity } from null (pid=2938, uid=2000) not exported from uid 10032
at android.os.Parcel.readException(Parcel.java:1327)
at android.os.Parcel.readException(Parcel.java:1281)
at android.app.ActivityManagerProxy.startActivity(ActivityManagerNative.java:1631)
at com.android.commands.am.Am.runStart(Am.java:441)
at com.android.commands.am.Am.run(Am.java:108)
at com.android.commands.am.Am.main(Am.java:81)
at com.android.internal.os.RuntimeInit.finishInit(Native Method)
at com.android.internal.os.RuntimeInit.main(RuntimeInit.java:238)
at dalvik.system.NativeStart.main(Native Method)
How to solve the problem ?
On the other hand, I made an App similar to the Android example using Eclipse. After I click Run as > Android Application in Eclipse menu bar, the console said:
[2014-01-06 18:55:10 - Glass001] Android Launch!
[2014-01-06 18:55:10 - Glass001] adb is running normally.
[2014-01-06 18:55:10 - Glass001] No Launcher activity found!
[2014-01-06 18:55:10 - Glass001] The launch will only sync the application package on the device!
[2014-01-06 18:55:10 - Glass001] Performing sync
[2014-01-06 18:55:10 - Glass001] Automatic Target Mode: Unable to detect device compatibility. Please select a target device.
[2014-01-06 18:55:17 - Glass001] Uploading Glass001.apk onto device '015DBXXXXXX701C'
[2014-01-06 18:55:17 - Glass001] Installing Glass001.apk...
[2014-01-06 18:55:20 - Glass001] Success!
[2014-01-06 18:55:20 - Glass001] /Glass001/bin/Glass001.apk installed on device
[2014-01-06 18:55:20 - Glass001] Done!
[2014-01-06 18:56:48 - Glass001] ------------------------------
Does this relate to the error message "No Launcher activity found!" ? Referring to this error, I found an answer in Stack Overflow. Where should I put the lines in the following AndroidManifest.xml
?
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.google.android.glass.sample.timer"
android:versionCode="2"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="15"
android:targetSdkVersion="15" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_timer"
android:label="@string/app_name" >
<activity
android:name="com.google.android.glass.sample.timer.MenuActivity"
android:label="@string/app_name"
android:theme="@style/MenuTheme"
android:enabled="true" >
</activity>
<activity
android:name="com.google.android.glass.sample.timer.SetTimerActivity"
android:label="@string/app_name"
android:enabled="true" >
</activity>
<activity
android:name="com.google.android.glass.sample.timer.SelectValueActivity"
android:label="@string/app_name"
android:enabled="true" >
</activity>
<service
android:name="com.google.android.glass.sample.timer.TimerService"
android:icon="@drawable/ic_timer"
android:label="@string/app_name"
android:enabled="true"
android:exported="true">
<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" />
</service>
</application>
</manifest>
Debug mode of Google Glass is ON (Yes, I can see the device in Eclipse)