安卓工作室错误:缺少功能:WATCH

22

我尝试在智能手表上使用Android Studio运行一个简单的应用程序,但是我收到了以下消息:

enter image description here

我的智能手表运行的是Android 4.4.2,API级别为19。

我尝试过但没有帮助的事情:

  1. 将Min Sdk版本更改为API 19

  2. 从androidManifest中删除< uses-feature android:name="android.hardware.type.watch" />

-应用程序已安装,但当我尝试从手表上运行它时,出现错误:很抱歉,我的应用程序已停止运行。 我的应用程序崩溃时的日志

  1. 不是删除

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

我尝试将其更改为:

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

但结果相同。

5个回答

30

拥有该元素

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

在您的清单中,Android Studio 认为这是一个 Android Wear 应用程序——但是您的 D5 手表并不运行 Android Wear。是的,它是运行 Android 的智能手表,但 Wear 具体是一组针对原生 Android 进行 Google专有(非开源)增强的功能,而D5没有这些功能。

在我的测试中,使用 android:required="false" 标记可以将应用程序部署到非 Wear 设备上。我不确定为什么您无法成功;也许与 Android Studio 版本有关(我正在使用 v2.3)。

但无论如何,如果您删除该元素,则应用程序应该可以在您的 D5 上部署。


如果我删除<uses-feature android:name="android.hardware.type.watch" />,那么我的应用程序可以安装,但是当我尝试运行它时,会出现错误。(我在帖子中说过,请看一下)。我所做的是为平板电脑和手机创建了一个项目。我的应用程序现在在我的D5手表上运行没有错误。如果我尝试访问一些手表功能,比如GPS位置或心率监测器,你知道我会有问题吗?因为像我说的,我创建了一个针对手机和平板电脑的项目,而不是针对手表的项目。 - E.Volt
你的logcat显示尝试使用来自'android.support.wearable'的功能时出现错误,这是Android Wear的一部分(因此在你的D5上不可用)。你应该能够为D5编写标准的Android应用程序(包括GPS,但不确定HRM),但无法使用Wear的功能。 - Sterling

8
我这样解决了它:
您只需要从清单中移除以下标签即可。
<uses-library android:name="com.google.android.wearable" android:required="false" />


tools:ignore="GoogleAppIndexingWarning"


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

我希望你能解决问题


2

在运行前检查运行目标

Screenshot


1
你需要更改你的应用程序以支持CPU架构等。我从下面的链接中复制了一部分内容,阅读以获取更多信息。 支持多个CPU架构 当使用Android NDK时,您可以通过在Application.mk文件中使用APP_ABI变量声明每个所需的架构来创建支持多个CPU架构的单个APK。
例如,这是一个声明支持三种不同CPU架构的Application.mk文件:
APP_ABI:= armeabi armeabi-v7a mips APP_PLATFORM:= android-9
编辑:

enter image description here


我想是这样。你有 AMD 的 CPU 吗? - Mehran Zamani
是的,我有尝试过进入BIOS设置,但是没有找到启用AMD-V的选项。(我只找到了启用SVM支持的选项,如果这有帮助的话) - E.Volt
使用Android NDK时,你有吗? - Mehran Zamani
你正在尝试在移动设备上运行可穿戴应用程序!!!(https://dev59.com/jV8e5IYBdhLWcg3wja_5) - Mehran Zamani
不,我不是。我认为Android Studio不支持我的智能手表,因为它的API级别为19。(尽管我将最小SDK版本设置为API 19) http://stackoverflow.com/questions/41057431/google-play-apks-supporting-android-wear-must-have-a-minimum-sdk-version-of-at-l/41220399 - E.Volt
显示剩余3条评论

0

这里是解决方案,将编辑配置从应用程序更改为您的Android Wear包名称。当您在Android Studio上单击绿色运行图标时,Wear模拟器将变得“兼容”。

注意: 如果您已将WearOS项目添加到现有的Android项目中,请不要忘记将配置更改回“应用程序”,以便您可以在模拟器/手机上运行Android应用程序。

干杯!


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接