使用Android构建和安装其中一个Pebble示例应用程序时出现了一些问题。
我正在尝试安装Tricorder示例,因此我运行了
pebble build
成功了;但是当我跑步时
pebble install --phone 129.161.93.98
要通过手机安装,我在Android上收到Unfortunately, Pebble has stopped.
错误。
ADB日志显示:
11-14 17:44:50.550 31705-31770/? E/PebbleApplication﹕ [SyncBootConfig] No message provided!
java.util.concurrent.TimeoutException
at com.koushikdutta.async.future.SimpleFuture.get(SimpleFuture.java:84)
at com.getpebble.android.http.HttpRequestUtil.fetchBootConfig(HttpRequestUtil.java:45)
at com.getpebble.android.config.SyncBootConfig.syncBootConfig(SyncBootConfig.java:71)
at com.getpebble.android.config.SyncBootConfig$BootConfigSyncTask.doInBackground(SyncBootConfig.java:44)
at com.getpebble.android.common.core.async.PblAsyncTask.doInBackground(PblAsyncTask.java:49)
at com.getpebble.android.common.core.async.PblAsyncTask.doInBackground(PblAsyncTask.java:18)
at android.os.AsyncTask$2.call(AsyncTask.java:288)
at java.util.concurrent.FutureTask.run(FutureTask.java:237)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
at java.lang.Thread.run(Thread.java:818)
11-14 17:44:52.864 31705-31705/? E/PebbleApplication﹕ [MyPebbleFragment] handleArguments: sideLoadingUri was null
11-14 17:44:52.883 31705-31705/? E/PebbleApplication﹕ [MainActivity] previousFragment was null
11-14 17:44:53.834 31729-31760/? E/PebbleApplication﹕ [PebbleBundle] Failed to parse manifest.
java.io.FileNotFoundException: Cannot find entry for manifest.json
at com.getpebble.android.common.framework.install.PebbleBundle.getInputStreamForComponent(PebbleBundle.java:61)
at com.getpebble.android.common.framework.install.PebbleBundle.parseManifest(PebbleBundle.java:71)
at com.getpebble.android.common.framework.install.app.AppBundle.<init>(AppBundle.java:72)
at com.getpebble.android.framework.install.app.AppBundleManager.getBundleFromFile(AppBundleManager.java:42)
at com.getpebble.android.framework.install.app.AppBundleManager.getBundleFromFile(AppBundleManager.java:23)
at com.getpebble.android.framework.install.PebbleBundleManager.fetchBundleFromUri(PebbleBundleManager.java:87)
at com.getpebble.android.framework.endpoint.InstallAppEndpoint.addAppSync(InstallAppEndpoint.java:247)
at com.getpebble.android.framework.endpoint.InstallAppEndpoint$3.doInBackground(InstallAppEndpoint.java:221)
at com.getpebble.android.common.core.async.PblAsyncTask.doInBackground(PblAsyncTask.java:49)
at com.getpebble.android.common.core.async.PblAsyncTask.doInBackground(PblAsyncTask.java:18)
at android.os.AsyncTask$2.call(AsyncTask.java:288)
at java.util.concurrent.FutureTask.run(FutureTask.java:237)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
at java.lang.Thread.run(Thread.java:818)
11-14 17:44:53.836 31729-31760/? E/AndroidRuntime﹕ FATAL EXCEPTION: AsyncTask #1
Process: com.getpebble.android:framework, PID: 31729
java.lang.RuntimeException: An error occured while executing doInBackground()
at android.os.AsyncTask$3.done(AsyncTask.java:300)
at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:355)
at java.util.concurrent.FutureTask.setException(FutureTask.java:222)
at java.util.concurrent.FutureTask.run(FutureTask.java:242)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
at java.lang.Thread.run(Thread.java:818)
Caused by: java.lang.IllegalStateException: 'Manifest' cannot be null!
at com.getpebble.android.common.framework.install.app.AppBundle.<init>(AppBundle.java:74)
at com.getpebble.android.framework.install.app.AppBundleManager.getBundleFromFile(AppBundleManager.java:42)
at com.getpebble.android.framework.install.app.AppBundleManager.getBundleFromFile(AppBundleManager.java:23)
at com.getpebble.android.framework.install.PebbleBundleManager.fetchBundleFromUri(PebbleBundleManager.java:87)
at com.getpebble.android.framework.endpoint.InstallAppEndpoint.addAppSync(InstallAppEndpoint.java:247)
at com.getpebble.android.framework.endpoint.InstallAppEndpoint$3.doInBackground(InstallAppEndpoint.java:221)
at com.getpebble.android.common.core.async.PblAsyncTask.doInBackground(PblAsyncTask.java:49)
at com.getpebble.android.common.core.async.PblAsyncTask.doInBackground(PblAsyncTask.java:18)
at android.os.AsyncTask$2.call(AsyncTask.java:288)
at java.util.concurrent.FutureTask.run(FutureTask.java:237)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
at java.lang.Thread.run(Thread.java:818)
11-14 17:45:01.174 31729-31800/? E/PebbleApplication﹕ [PblInboundPingMessage] Unexpected format. Not ping?
如果我尝试通过BlueTooth序列直接安装Pebble应用程序
pebble install --serial /dev/tty.Pebble0DF7-SerialPortSe
我收到此错误:
Could not find Manifest.json; are you sure this is a PebbleBundle
注意:这是使用Android 5.0.2的Pebble steel
答案 0 :(得分:0)
我通过使用guides
中的此命令创建一个新的Pebble项目来解决此问题pebble new-project [--simple] [--javascript] [--worker] NAME
仍然不确定在示例项目中是什么导致它,但创建一个新文件并复制文件似乎产生了所需的效果。