Play store rapports “Votre appareil n'est pas compatible avec cette version”, mais il installe via adb très bien sur Nexus7
J'ai une application que j'ai sorti d'une salle de Google Play beta. Je peux installer ce même APK pour ma Nexus 7 très bien avec
adb pm install
mais à travers le Google Play store il est marqué pour cette exacte même Nexus7 comme
Your device isn't compatible with this version.
C'est le même apk. Je ne peux pas comprendre comment obtenir toutes les informations sur pourquoi le play store pense que c'est pas compatible.
Mon manifeste ressemble à ceci:
<uses-sdk android:minSdkVersion="10" />
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
<uses-permission android:name="android.permission.CAMERA"></uses-permission>
<uses-permission android:name="android.permission.RECORD_AUDIO"></uses-permission>
<uses-permission android:name="android.permission.READ_PHONE_STATE"></uses-permission>
<uses-permission android:name="android.permission.WAKE_LOCK"></uses-permission>
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.GET_TASKS" />
<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.hardware.camera.autofocus" />
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".foobar"
android:label="@string/app_name"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<service android:name=".fooservice" android:exported="false" android:enabled="true" android:label="@string/app_name" android:icon="@drawable/icon">
</service>
</application>
Toute aide sur la façon de déterminer pourquoi Google Play pense qu'il n'est pas compatible?
Êtes-vous à l'aide d'une nexus 7 2012 (original)?
Oui, monsieur, je suis. Il avait déjà été enracinée mais je viens de reflashed et est maintenant non racinées avec 4.4.2
Je +1 à votre commentaire. Je pense que vous avez arriver à l'appareil utilise la fonctionnalité de chose. Merci pour votre aide.
Oui, monsieur, je suis. Il avait déjà été enracinée mais je viens de reflashed et est maintenant non racinées avec 4.4.2
Je +1 à votre commentaire. Je pense que vous avez arriver à l'appareil utilise la fonctionnalité de chose. Merci pour votre aide.
OriginalL'auteur spartygw | 2014-01-31
Vous devez vous connecter pour publier un commentaire.
Qui est complètement à corriger ce problème: veuillez vous référer à la documentation officielle ici http://developer.android.com/guide/topics/manifest/uses-feature-element.html.
C'est la partie pertinente:
Déclaré
<uses-feature>
éléments sont uniquement à titre informatif, ce qui signifie que le système Android lui-même ne cochez pas pour fonction d'adaptation de l'appui sur le périphérique avant d'installer une application. Cependant, d'autres services (tels que Google Play) ou applications peuvent vérifier votre application<uses-feature>
déclarations dans le cadre de la manipulation, ou d'interagir avec votre application. Pour cette raison, il est très important que vous déclarez toutes les fonctionnalités (à partir de la liste ci-dessous) que votre application utilise.Donc le fait que vous êtes en mesure d'installer l'apk par la bad n'est pas une preuve pour un périphérique particulier pour être filtré ou non.
Aussi, vérifiez ici: http://developer.android.com/guide/topics/manifest/uses-permission-element.html
Dans certains cas, les autorisations de votre demande par le biais peuvent affecter la façon dont votre application est filtré par Google Play.
Si vous demandez un matériel d'autorisation de la CAMÉRA, par exemple Google Play suppose que votre application nécessite le matériel sous-jacent de la fonctionnalité et des filtres de l'application à partir de périphériques qui ne le permettent pas.
Mise à jour: vous avez confirmé que vous êtes à l'aide de la Nexus 7 2012, merci de consulter ce blog officiel de poste: http://android-developers.blogspot.ch/2012/07/getting-your-app-ready-for-jelly-bean.html.
Google déclare "les applications nécessitant la android.matériel.fonction appareil photo ne sera pas disponible sur les Nexus 7".
Si vous avez besoin de cette permission, parce que vous utilisez l'appareil photo dans votre application, vous pouvez le faire par programmation comme expliqué dans http://developer.android.com/guide/topics/media/camera.html#detect-camera.
<uses-feature android:name="android.hardware.camera" />
n'est pas compatible avec une nexus 7?La lecture de votre liste d'autorisations, la READ_PHONE_STATE il peut être à l'origine de Google Play pour filtrer votre Nexus 7. Aucune chance de tester l'apk sans cette autorisation (peut-être que la beta apk dans le dev de la console)?
Aha! Grande pêche. Je vais essayer ça et d'en faire rapport. Malheureusement, il peut prendre parfois des heures avant mon téléchargé l'APK filtres via le Play store.
Ok, lui donner un essai. C'est quelque chose qui a trait aux autorisations que vous demandez ou la fonctionnalité dont vous avez besoin.
ajouter l'=faux tag
<uses-permission android:name="android.permission.CAMERA" android:required="false"/>
que vous aurez besoin pour gérer le cas de ne pas avoir un appareil photo dans le code. voir le lien que @fasteque postéOriginalL'auteur fasteque
Ce qui est arrivé à mon application d'un couple de fois. Il s'est avéré que la caméra exigence a été la cause de cette erreur lorsque l'utilisateur de l'appareil n'avait jamais utilisé l'appareil depuis l'achat.
- Je changer la caméra à l'exigence de ne pas être requis par le texte suivant:
Vous aurez également besoin du <uses-feature> lignes pour le magasin de jeu pas besoin de la fonctionnalité. Mon expérience a été que, si elles l'utilisateur n'avais pas utilisé la caméra de leur téléphone alors en quelque sorte, il n'était pas reconnaître la fonction existe et la "nécessaire" par défaut est true. Je ne me souviens pas en quelle version de téléphone de mon utilisateur, mais en utilisant toutes les lignes ci-dessus semble avoir fixé.
OriginalL'auteur Gravitoid
Vous devriez lire/suivre cette lien de Reto Meier.
Comme dit dans le lien à partir de maintenant, vous devez spécifier vos fonctions de l'application.
Fondamentalement une solution rapide consiste à exécuter aapt de vidage de badges {votre apk} et de vérifier les fonctionnalités de votre application à l'aide. Puis ajouter celles qui n'affectent pas l'application de la convivialité à votre manifeste avec champ obligatoire définie sur false.
e.g. <uses-feature android:name="android.hardware.camera" android:required="false" />
Qui devrait être suffisant.
OriginalL'auteur manuelvsc
Cela Peut se Produire lorsque vous donner des autorisations inutiles.
dans mon cas, j'utilise la permission
uses-feature android:name="com.sec.fonctionnalité.spen_usp" android:required="true"
Quand je supprimer cette autorisation alors qu'elle fonctionne très bien
OriginalL'auteur Areeba Qurashi