Por que a Google Play Store diz que meu aplicativo para Android é incompatível com meu próprio dispositivo?
Eu hesito em fazer esta pergunta, porque parece quemuitas pessoas têm um problema semelhante e ainda não encontrei nenhuma solução que resolva minha instância particular.
Eu desenvolvi um aplicativo Android (link para o aplicativo real) e enviou-o para a Play Store. A Play Store diz
"This app is incompatible with your XT Mobile Network HTC HTC Wildfire S A510b."
É claro que esse é o telefone em que desenvolvi o aplicativo, por issodeveria para ser compatível. Algumas pessoas com outros dispositivos dizem que ele é compatível, outras dizem que ele é incompatível, mas não consigo encontrar nenhuma tendência. (Aparentemente eu não conheço muitas pessoas com dispositivos Android.)
Eu tentei o seguinte:
movendo um arquivo grande-ish fora dores/raw
diretório como sugerido poresta resposta. O único arquivo lá era um arquivo de texto de ~ 700 kB, mas eu mudei paraassets/
sem mudança aparente.
adicionando as seguintes duas asserções de recurso:
<code><uses-feature android:name="android.hardware.faketouch" /> <uses-feature android:name="android.hardware.touchscreen" android:required="false" /> </code>
pensando que talvez o meu telefone não pretende apoiar o habitualandroid.hardware.touchscreen
recurso, mas novamente, sem nenhuma mudança aparente.
Ao fazer o upload do APK para a Play Store, o único filtro que ele informa como ativo é oandroid.hardware.faketouch
característica.
O seguinte é a saída deaapt dump badging bin/NZSLDict-release.apk
:
<code>package: name='com.hewgill.android.nzsldict' versionCode='3' versionName='1.0.2' sdkVersion:'4' targetSdkVersion:'4' uses-feature:'android.hardware.faketouch' uses-feature-not-required:'android.hardware.touchscreen' application-label:'NZSL Dictionary' application-icon-160:'res/drawable/icon.png' application: label='NZSL Dictionary' icon='res/drawable/icon.png' launchable-activity: name='com.hewgill.android.nzsldict.NZSLDictionary' label='NZSL Dictionary' icon='' main other-activities supports-screens: 'small' 'normal' 'large' supports-any-density: 'true' locales: '--_--' densities: '160' </code>
e para completar, meu arquivo de manifesto:
<code><?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.hewgill.android.nzsldict" android:versionCode="3" android:versionName="1.0.2"> <uses-sdk android:minSdkVersion="4" android:targetSdkVersion="4" /> <uses-feature android:name="android.hardware.faketouch" /> <uses-feature android:name="android.hardware.touchscreen" android:required="false" /> <application android:label="@string/app_name" android:icon="@drawable/icon"> <activity android:name="NZSLDictionary" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name=".WordActivity" /> <activity android:name=".VideoActivity" /> <activity android:name=".AboutActivity" /> </application> </manifest> </code>
Na seção "Disponibilidade de dispositivo" da Play Store, vejo que todos os dispositivos HTC, incluindo o Wildfire S, são suportados, exceto "G1 (truta)" e "Touch Viva (opala)", quaisquer que sejam esses. Na verdade, vejo que tanto "Wildfire S (maravilha)" como "Wildfire S A515c (marvelc)" são listados como suportados, mas o meu "Wildfire S A510b" não é especificamente mencionado. Esse tipo de identificador de sub-modelo pode importar tanto? Eu consegui baixar vários outros aplicativos do Google Play para o meu telefone sem problemas.
A única coisa que eunão tem feito neste momento é esperar 4-6 horas após o upload da versão mais recente (como emeste comentário) para ver se ainda diz que é incompatível com o meu telefone. No entanto, a página da Play Store exibe atualmente 1.0.2, que é o último que eu enviei.