سؤال

I see several questions like this on SO, but no good answer in them for my particular case. A user with "AnydataVisual Land Prestige 7D– PRO7D" Android tablet, asks me why my app is listed on Google Play as "unsupported" with his device. No idea why and no way to ask Google about this.

I read the other replies to similar questions, but they don't apply. According to device specs (http://www.visual-land.com/107d.html, scroll down, click "Tech Specs" tab) it has Cortex-A9 1.6GHz CPU, 1GB RAM, a 7 inch 1024x600 screen, runs Android 4.1 Jelly Bean, WiFi, camera, has speaker, headset socket. No mention of Bluetooth though, and my manifests asks for BLUETOOTH permission, but that should not exclude the device. The user side-loaded my APK and has no problems with the app. Any other ideas? Below is the relevant fragment of my AndroidManifest.xml:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      android:installLocation="auto"
      package="com.hyperionics.avar"
      android:versionCode="4040000"
      android:versionName="4.4.0">
<uses-sdk android:minSdkVersion="8"
          android:targetSdkVersion="19" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.INTERNET" />
<supports-screens
        android:xlargeScreens="true"
        android:largeScreens="true"
        android:normalScreens="true"
        android:smallScreens="true"
        android:anyDensity="true" />
<application android:label="@string/app_name"
             android:icon="@drawable/at_voice"
             android:name="com.hyperionics.avar.TtsApp"
        >
(...)

I also use JNI native libraries in the app, and build separate packages for ARM, ARM-V7, MIPS and Intel CPUs, no problems with that on the other 4518 devices, according to Google...

The app is a TTS reader for web pages, articles, PDF files etc. Alternatively, if we can't figure out this, does anyone know a good way to contact Google about such issues?

Greg

هل كانت مفيدة؟

المحلول

No mention of Bluetooth though, and my manifests asks for BLUETOOTH permission, but that should not exclude the device

Yes, it should.

Quoting the documentation:

Some feature constants listed in the tables above were made available to applications after the corresponding API; for example, the android.hardware.bluetooth feature was added in Android 2.2 (API level 8), but the bluetooth API that it refers to was added in Android 2.0 (API level 5). Because of this, some apps were able to use the API before they had the ability to declare that they require the API via the system.

To prevent those apps from being made available unintentionally, Google Play assumes that certain hardware-related permissions indicate that the underlying hardware features are required by default. For instance, applications that use Bluetooth must request the BLUETOOTH permission in a element — for legacy apps, Google Play assumes that the permission declaration means that the underlying android.hardware.bluetooth feature is required by the application and sets up filtering based on that feature.

There is a special section in the documentation regarding setting up the manifest properly for Bluetooth permissions that addresses your scenario.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top