android studio错误:缺少功能:WATCH

问题描述 投票:5回答:4

我试图在我的智能手表上用android studio运行一个简单的应用程序,我得到以下消息:

enter image description here

我的smartwatch运行android 4.4.2,其API级别为19

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

  1. 将Min Sdk版本更改为API 19
  2. 从androidManifest中删除< uses-feature android:name="android.hardware.type.watch" />

- 应用程序已安装,但当我尝试从手表运行它时,我收到错误:不幸的是,我的应用程序已停止。 logcat when my app crases

  1. 而不是删除 < uses-feature android:name="android.hardware.type.watch" />

我尝试将其更改为:

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

但我有相同的结果

android android-studio sdk wear-os
4个回答
7
投票

有元素

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

在你的清单中,Android Studio意味着这是一个Android Wear应用程序 - 而你的D5手表不运行Android Wear。是的,它是一款运行Android的智能手表,但Wear特别是一套针对Android的谷歌专有(非开源)增强功能 - 而D5则没有。

在我的测试中,使用android:required="false"标记它允许将应用程序部署到非Wear设备。我不确定为什么这对你不起作用;也许这与Android Studio版本有关(我使用的是v2.3)。

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


0
投票

您需要更改您的应用程序以支持cpu架构等。我从下面的链接复制一个部分。阅读更多信息。

Supporting multiple CPU architectures

使用Android NDK时,您可以通过在Application.mk文件中使用APP_ABI变量声明每个所需的体系结构来创建支持多个CPU体系结构的单个APK。

例如,这是一个Application.mk文件,声明支持三种不同的CPU架构:

APP_ABI:= armeabi armeabi-v7a mips APP_PLATFORM:= android-9

编辑:

enter image description here


0
投票

我这样解决了

您只需要从清单中删除以下标记

<uses-library android:name="com.google.android.wearable" android:required="false" />


tools:ignore="GoogleAppIndexingWarning"


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

我希望你解决问题


0
投票

以下是解决方案,将编辑配置从app更改为Android Wear软件包名称。单击Android Studio上的绿色运行图标时,Wear模拟器将变为“兼容”。

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

干杯!

© www.soinside.com 2019 - 2024. All rights reserved.