Android Wear 在 Debug模式下不打包 watch 应用

标签 android wear-os

Gradle 包装器版本:2.5

Gradle android 插件:编译 'com.android.tools.build:gradle:1.2.3'

Android Studio:版本1.2.2

移动依赖项:

wearApp project(':wear')
compile 'com.google.android.gms:play-services-base:7.5.0@aar'
compile 'com.google.android.gms:play-services-wearable:7.5.0@aar'
compile "com.android.support:support-v4:22.2.1"

磨损依赖性:

compile 'com.google.android.support:wearable:1.2.0'
compile 'com.google.android.gms:play-services-wearable:7.5.0'

通过运行assembleDebug,移动应用程序被构建和打包,然后穿戴应用程序被独立构建和打包。这样,wear apk 就不会出现在移动应用程序的 res/raw 文件夹中, list 也不会更新等。

但是,如果我运行 assembleRelease,则会首先构建穿戴应用程序,并将其正确打包到移动应用程序中并安装在 watch 上。

我认为签名可能是问题所在。我为调试版本提供了与发布版本相同的签名配置(相同的证书、 keystore 等),但行为仍然相同。

使用 Android Studio 或从命令行打包都会发生这种情况。

不用说,这非常不方便,因为我无法在任一设备上调试应用程序。

有人经历过这种行为吗?我们必须启用才能在 Debug模式下打包可穿戴应用程序的 gradle 插件中是否发生了任何更改?

更新:我不知道我的内存是否失败,但我确实记得能够使用 assembleDebug 打包应用程序,部署到手机(并因此部署到 watch )并被能够在 watch 上连接调试器。

不过我可能弄错了。我最终做的是在两台设备上独立部署应用程序(通过 Android Studio)并从那里开始。也许我过去总是这样做,而文档的编写方式让我相信事实并非如此。我还是把这个问题留给其他人吧。

最佳答案

如果我没记错的话,手机应用程序中穿戴应用程序的打包仅针对发布版本,因此这是设计使然。事实上,当我开发一个应用程序或调试一个应用程序时,我只使用 adb 来推送 Wear 应用程序会更方便;我不必不断增加版本(否则穿戴应用程序将不会更新),也不需要每次都构建手机应用程序。你有什么理由不能这样做吗?另外,您是否有理由说“..我无法在任一设备上调试应用程序”?

关于Android Wear 在 Debug模式下不打包 watch 应用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31663726/

相关文章:

android - 引用另一个 XML 文件中的 View

android - 在android中显示来自后台服务的弹出窗口

java - 转向 SD 兼容性

android - Android Cloud 2 Device Messaging (C2DM) 是否与 Google 的两步验证兼容?

android - 在 Android Wear 中以低位模式进入 BW 是否真的为所有设备节省电池?

android - 如何禁止我的应用程序出现在 Android Wear 设备上?

android - 设置 android wear watch 设备所有者

java - Android 无法访问更改系统设置权限

android - 如何确保已调用 onDataChanged?怎么办?

android - 无法在 Eclipse 中执行初始 Android Wear Hello World App