Nous sommes en train de réviser notre manifeste d'application pour utiliser explicitement l'attribut uses-feature
pour déclarer toutes ses dépendances sur les API matérielles et logicielles.android.hardware.telephony interrompt l'installation sur l'émulateur
Étant donné que nous nous attendons à ce que l'utilisateur dispose d'Internet mobile, nous avons défini android.hardware.telephony
sur true
, mais l'application ne peut plus être installée sur l'émulateur. Le message d'erreur est:
Failure [INSTALL_FAILED_MISSING_FEATURE]
Il n'y a pas d'informations supplémentaires, pas même dans les journaux de l'appareil, mais je pourrais comprendre par tâtonnement que la fonction de téléphonie a été à l'origine.
Étant donné que l'émulateur prend en charge la fonctionnalité de téléphonie (vous pouvez même simuler l'envoi d'un appel), pourquoi cela casse-t-il? Et même s'il signale correctement qu'il ne prend pas en charge la téléphonie, ne devrait-il pas être évident que uses-feature
était destiné à cibler les périphériques réels, pas l'émulateur?
Je suis en fait assez confus au sujet de cet attribut maintenant en général, puisque its documentation semble impliquer qu'il n'affecte que les règles de filtrage pour Android Market. Je ne peux pas voir où il mentionne que uses-feature
a un impact direct sur l'installabilité d'une application, qui semble aller bien au-delà de la nature purement déclarative/informationnelle que l'attribut docs lui attribue.
Peut-être que ce n'est pas une bonne idée de l'utiliser après tout? Notre serveur de construction ne s'exécute plus, car l'installation sur l'émulateur échoue toujours ...
Quel est exactement le message d'erreur que vous avez? –
Désolé, ajouté le message d'erreur que nous voyons. – Matthias
C'est bizarre, mais voulez-vous vraiment placer cette restriction? Un utilisateur peut avoir une bonne couverture wifi et ne pas opter pour une facture mensuelle mobile. –