2017-04-06 59 views
0

我正在开发一个Android Wear应用程序,它从传感器收集重要数据以进行分析。它仍然是一个婴儿项目,我们只希望它能够在几个特定的​​可穿戴设备上工作。如何将Android Wear应用限制到特定设备?

但是,由于“与各种可穿戴设备不兼容”,我发布了alpha版本后,可穿戴应用被Google Play拒绝。

您的应用程序的基本功能不能像描述的那样工作。请务必在各种不同的Android Wear设备和配置上测试您的应用。

在开发人员控制台中,“管理设备”按钮仅适用于手持设备。所有可穿戴设备都被标记为“不受支持”。

dev console screenshot

如何指定Android Wear的应用程序所支持的设备?

更新(舱单)

电话:

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="tsundere.frederick.myapp"> 

    <uses-permission android:name="android.permission.WAKE_LOCK" /> 
    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" /> 
    <uses-permission android:name="android.permission.BODY_SENSORS" /> 
    <uses-permission android:name="android.permission.INTERNET" /> 
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
    <uses-permission android:name="android.permission.LOCATION_HARDWARE" /> 
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> 
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> 
    <uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" /> 

    <application 
     android:name=".Application" 
     android:allowBackup="true" 
     android:icon="@mipmap/ic_launcher" 
     android:label="@string/app_name" 
     android:supportsRtl="true" 
     android:theme="@style/AppTheme"> 
     <activity 
      android:name=".MainActivity" 
      android:label="@string/app_name" 
      android:launchMode="singleTop" 
      android:theme="@style/AppTheme.NoActionBar"> 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 

     <meta-data 
      android:name="com.google.android.gms.version" 
      android:value="@integer/google_play_services_version" /> 

     <service 
      android:name=".listener.SensorListener" 
      android:enabled="true" 
      android:exported="true"> 
      <intent-filter> 
       <action android:name="com.google.android.gms.wearable.DATA_CHANGED" /> 

       <data 
        android:host="*" 
        android:pathPrefix="/myapp_sensor" 
        android:scheme="wear" /> 
      </intent-filter> 
     </service> 
     <service 
      android:name=".listener.OpenPhoneListener" 
      android:enabled="true" 
      android:exported="true"> 
      <intent-filter> 
       <action android:name="com.google.android.gms.wearable.MESSAGE_RECEIVED" /> 

       <data 
        android:host="*" 
        android:pathPrefix="/myapp_open_phone" 
        android:scheme="wear" /> 
      </intent-filter> 
     </service> 

     <activity android:name=".LabelActivity" /> 
     <activity android:name=".SettingActivity" /> 
    </application> 

</manifest> 

磨损:

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
      package="tsundere.frederick.myapp"> 

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

    <uses-permission android:name="android.permission.WAKE_LOCK"/> 
    <uses-permission android:name="android.permission.BODY_SENSORS"/> 

    <application 
      android:name=".Application" 
      android:allowBackup="true" 
      android:icon="@mipmap/ic_launcher" 
      android:label="@string/app_name" 
      android:supportsRtl="true" 
      android:theme="@android:style/Theme.DeviceDefault"> 
     <uses-library 
       android:name="com.google.android.wearable" 
       android:required="false"/> 

     <activity 
       android:name=".MainActivity" 
       android:label="@string/app_name" 
       android:theme="@android:style/Theme.DeviceDefault.Light"> 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN"/> 

       <category android:name="android.intent.category.LAUNCHER"/> 
      </intent-filter> 
     </activity> 

     <service 
       android:name=".service.MinimalSensorService" 
       android:enabled="true" 
       android:exported="false"> 
     </service> 
    </application> 

</manifest> 
+0

你好,你应该发布你的清单,让我们有一个关于PlayStore正在考虑过滤的线索。 Play Store仅使用清单和最小/最大SDK来过滤兼容性 – gbaccetta

+0

@gbaccetta已更新。目前,我希望它只适用于Moto 360 Sport。 –

+0

根据此[Google社区帖子](https://plus.google.com/107096860394212846662/posts/9tPW5zX7PyZ)“这通常意味着它不适用于所有屏幕分辨率。”或者“在方形和圆形设备上复查东西。”在[定义布局](https://developer.android.com/training/wearables/ui/layouts.html)和[Android Wear类型检测](http://stackoverflow.com/)中检查屏幕分辨率的正确方式问题/ 24907557 /机器人磨损型检测用圆形或正方形)。 – noogui

回答

0

这是不可能通过设备Android Wear 1.x的限制只要Wear 2.0击中Moto 260 Sport,您就可以上传独立APK,然后使用“管理设备”在Google Play上为其选择特定设备。

相关问题