Lorsque j'essaie de télécharger la première apk vers un projet récemment créé dans la console GooglePlay, je reçois cette erreur:
Vous ne pouvez pas télécharger un fichier APK de test uniquement
La recherche Google me donne 0 résultats pour cette chaîne exacte selon aujourd'hui.
J'ai également soumis un ticket pour Play Console. Mettra à jour ici si vous avez une réponse.
MISE À JOUR 29 novembre 2017
Comme l'a suggéré @ paul-lammertsma, il existe une solution de contournement. Ce serait quand même bien de savoir pourquoi nous devons aller graduellement et nous ne pouvons pas le faire via IDE.
Création de votre application via Android Studio 3.0 et versions ultérieures ajouteront Android:testOnly="true"
à votre manifeste d'application, marquant l'APK comme FLAG_TEST_ONLY
pour le PackageManager. Plus d'informations sur CommonsBlog ici.
La tentative d'installation d'un tel fichier APK en dehors de Android Studio échouera avec:
Échec de l'installation de app-debug.apk: échec [INSTALL_FAILED_TEST_ONLY: installPackageLI]
Tenter de le télécharger sur Google Play échouera également, avec:
Vous ne pouvez pas télécharger un fichier APK de test uniquement
Il existe quatre solutions:
Sélectionnez simplement "Build APK (s)" dans le menu "Build" de Android Studio.
Sélectionnez simplement "Generate Signed APK ..." dans le menu "Build" dans Android Studio. Fournissez le fichier de clés et entrez les détails de signature dans la boîte de dialogue qui s'affiche.
Vous pouvez bien sûr simplement exécuter Gradle depuis le terminal. D'ailleurs, si votre cycle de déploiement passe par CI (et ça devrait!), C'est vraiment la voie à suivre!
./gradlew assembleRelease
(Vous pouvez également préférer exécuter cette tâche Gradle à partir du volet Gradle depuis Android Studio.)
Si vous n'aimez pas ce comportement, vous pouvez choisir d'ajouter ce drapeau à votre gradle.properties
. Méfiez-vous que l'indicateur de test est pour votre propre protection, donc vous ne publiez pas accidentellement un APK de test uniquement!
# Disble the bullshit testOnly mode for Android Studio
Android.injected.testOnly=false
On dirait que j'ai trouvé quelque chose de très lié: Échec de l'installation d'ADB avec INSTALL_FAILED_TEST_ONLY
J'utilise 2.4.0-alpha6 du plugin gradle et cela semble loin d'être prêt à être utilisé pour la production.
La solution consiste donc à utiliser le dernier plugin stable gradle:
classpath 'com.Android.tools.build:gradle:2.3.1'
Cliquez sur Build, puis appuyez sur BuildAPK (s), puis téléchargez-le fonctionnera. Exécutez l'APK instantanément sur Android studio 3.0 fonctionne uniquement sur l'appareil connecté à adb.
J'ai trouvé ce blog qui traite de la cause du bogue "test uniquement"
https://commonsware.com/blog/2017/10/31/Android-studio-3p0-flag-test-only.html
fondamentalement, il y a deux choses à noter à ce sujet:
Vous ne pouvez pas installer une application avec Android: testOnly = "true" par des moyens conventionnels, comme à partir d'un gestionnaire de fichiers Android ou à partir d'un téléchargement à partir d'un site Web
Android Studio 3.0 définit Android: testOnly = "true" sur les fichiers APK exécutés à partir de l'IDE
Android studio 3.0 définit désormais cet indicateur "testOnly" lorsque vous compilez une version finale à l'aide du bouton vert Exécuter (créez le projet CTRL + F9).
La solution que j'ai trouvée est de ne pas appeler "make project", mais d'appeler
J'utilise Android Studio 3.1 Canary 5
Ce que j'avais essayé (mais pas travaillé):
./gradlew assembleRelease
Après toutes les possibilités j'ai obtenu la solution de la manière suivante: - La version du SDK de compilation est passée de Android P à Android Oreo 27 - Modifié AppCompat Version vers 27.0.1
et son travail avec succès maintenant.
Merci.