未安装Android Wear应用程序

未安装Android Wear应用程序,android,wear-os,Android,Wear Os,我们今天发布了第一个可穿戴应用程序,但遗憾的是,这个应用程序并没有像它应该的那样自动安装 我们再次检查了APK和可穿戴APK,但从未击中手表。按照这里的建议手动打包APK也没有帮助。(我们知道这只会影响付费应用程序,但可以肯定的是) 还有其他人面临这个问题吗?如果我们通过adb安装APKs,该应用程序就可以工作。 检查您的权限。智能手机部件需要具有磨损组件的所有权限 对两个应用程序(wear和mobile)使用相同的软件包id 您应该检查两台设备上的adb logcat以了解发生了什么。它将给出

我们今天发布了第一个可穿戴应用程序,但遗憾的是,这个应用程序并没有像它应该的那样自动安装

我们再次检查了APK和可穿戴APK,但从未击中手表。按照这里的建议手动打包APK也没有帮助。(我们知道这只会影响付费应用程序,但可以肯定的是)

还有其他人面临这个问题吗?如果我们通过adb安装APKs,该应用程序就可以工作。

  • 检查您的权限。智能手机部件需要具有磨损组件的所有权限
  • 对两个应用程序(wear和mobile)使用相同的软件包id

您应该检查两台设备上的adb logcat以了解发生了什么。它将给出错误消息以指示可能发生的问题


此外,当您在本地测试时,您应该只将手机APK安装到手机上,并让它将嵌入式APK安装到可穿戴设备上。那么你就不需要一路通过play store进行测试了。确保发布版本,因为只有这些版本使用wearApp()gradle规则执行嵌入式APK。

也有同样的问题,帮助我的是添加了

<uses-feature android:name="android.hardware.type.watch" android:required="false"/>


手机清单。

我花了很多时间在这上面。wearApp gradle规则对我很有效。但对于付费版本的应用程序,按照指南手动打包wear应用程序,它不会自动加载到可穿戴设备上。经过大量检查,我发现wearApp gradle规则(在Android Studio 0.8.2上)确实按照博客帖子修复程序将可穿戴APK放在了原始文件夹中。所以在最新的Android Studio中似乎已经修复了(没有被告知?)。由于某些原因,手动打包APK无法工作

因此,请使用wearApp gradle规则

此外,如果您需要为不同的手持APK版本参考不同版本的wear APK(对于免费和专业版本,要使applicationId与可穿戴版本匹配),请使用wear gradle配置中的productFlavors:

productFlavors {
    freeapp {
        applicationId "com.barkside.appfree"
    }

    proapp {
        applicationId "com.barkside.apppro"
    }
}
然后在您的专业版gradle(例如)中,将wearApp依赖项目标设置为特定配置:

wearApp project(path: ':wear', configuration: 'proappRelease')

您还需要在wear gradle的android块中发布
非默认值true

这听起来像是一个基本而愚蠢的答案。但是当我做测试的时候,我忘记了在Android Studio中,你可以点击play按钮来运行你的应用程序,你可以将它从mobile改为wear。我只在wear设备上安装了移动应用程序,没有安装wear应用程序


希望这对某人有所帮助。

对我有效的方法是去除产品风味。糟糕的是,我现在不能有特定于味道的代码,但Android拒绝在发行版中打包wear应用程序


请参阅:

我在安装应用程序时遇到问题,我想是因为我的手表在安装时重置了。在重新安装了这只表的所有部件后,我不得不把它拆了。可能帮助某人

可能是一个愚蠢的问题,但可能您仍然安装了调试应用程序?在这种情况下,我想它不会被安装,因为签名不同。在将Android Studio更新到最新版本并向智能手机应用程序添加缺少的权限后,它就可以工作了。所以我想这就是问题所在。奇怪的是,logcat中没有错误消息。@onigum:您能告诉我添加到您的wear应用程序清单中的缺少的权限是什么吗?我有一个奇怪的问题,它是相似的:@TheDevMan他的意思是:所有在可穿戴应用程序中声明的权限都必须包含在移动应用程序中。换句话说:你的移动应用程序应该收集所有权限:这些权限用于移动应用程序+这些权限用于可穿戴应用程序。@MaciejCiemięga除了我的移动应用程序中已经存在的训练营之外,我没有任何权限。。。我还参加了手机和服装行业。。两者都有相同的软件包名称,但我仍然有一个问题。@MaciejCiemięga:在我的Android wear项目中,我只有一个按钮,当我按下按钮时,我会在手机中收到数据。它在调试模式下工作正常。我是否需要在我的手机应用程序中执行任何说明wear connect发送并在android wear中安装该应用程序的操作?我遇到了一个相同的问题,adb日志没有提供任何有用的信息。我会看到一条线,似乎表明它正在将应用程序发送到手表,而手表adb日志中没有任何内容。在我的情况下,我没有移动应用和穿戴应用之间匹配的权限。但是,您是正确的,当设置正确时,它将以签名的版本安装到手表上。不需要一路发布到play store进行测试。@JeffTyson:您能告诉我添加到您的wear应用程序清单中的缺少的权限是什么吗?我有一个奇怪的问题:是否有类似的文档<代码>wearApp项目(路径:':wear',配置:'proappRelease')当我执行wearApp项目(路径:':wear',配置:'freeRelease')时,出现错误:(63,0)生成脚本错误,找到不支持的Gradle DSL方法:'project()'!对此有什么想法吗?是的,我也有同样的问题,但我在手持设备和佩戴模块中都有自己的风格,我使用了这个文档,可以在这里找到:这对我也有用,但为什么?现在建议可以在非手表的硬件上安装Wear应用程序。修复了我的问题。谢谢现在你可以用更好的方法了。请看