J'avais l'habitude de publier une application ionic sur google play mais ce matin, j'ai reçu l'avertissement suivant: "Votre application cible désormais le niveau API 26. Néanmoins, elle devrait désormais cibler le niveau API 28 ..."
J'utilise Cordova 6.3.0, comment puis-je cibler l'API 28 avec lui?
Voici mon ionic info:
Ionic:
ionic (Ionic CLI) : 4.12.0 (/usr/local/lib/node_modules/ionic)
Ionic Framework : ionic-angular 3.9.2
@ionic/app-scripts : 3.2.4
Cordova:
cordova (Cordova CLI) : 9.0.0 ([email protected])
Cordova Platforms : Android 6.3.0, ios 5.0.1
Cordova Plugins : cordova-plugin-ionic-keyboard 2.1.3, cordova-plugin-ionic-webview 1.2.1, (and 14 other plugins)
System:
NodeJS : v10.16.0 (/usr/local/bin/node)
npm : 6.9.0
OS : macOS Mojave
Xcode : Xcode 10.2.1 Build version
Je n'ai pas de message d'erreur lors de la création de mon application localement comme je l'ai fait jusqu'à présent, l'avertissement ne concerne que la plateforme google play.
Voici la ligne de commande que j'utilise généralement:
npm i
cordova platform rm Android
ionic cordova platform add [email protected] --save-exact
ionic cordova build Android --prod --release
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore somekeystorye.keystore /Users/user/Documents/dev/app/platforms/Android/build/outputs/apk/Android-release-unsigned.apk Name
~/Library/Android/sdk/build-tools/29.0.1/zipalign -v 4 /Users/user/Documents/dev/app/platforms/Android/build/outputs/apk/Android-release-unsigned.apk /Users/user/Documents/dev/app/platforms/Android/build/outputs/apk/Android-release-0.0.20.apk
Une idée?
[~ # ~] modifier [~ # ~] Il semble que:
<preference name="Android-targetSdkVersion" value="28" />
Est-ce que le travail tel que mentionné ici: Cordova [email protected] peut-il cibler le SDK 26? Je n'ai aucun avertissement maintenant.
J'essaierai de vérifier et reviendra plus tard pour vous garder en contact
pour moi, ce qui fonctionne finalement était juste ceci:
<preference name="Android-targetSdkVersion" value="28" />
Après avoir passé du temps sur cette erreur, j'ai trouvé cette solution à trois.
ionic cordova platform rm Android
ionic cordova platform add [email protected]
<preference name="Android-targetSdkVersion" value="28" />
changer directement le uses-sdk
n'est pas la bonne réponse, du moins pas assez ni bonne réponse ...
vous feriez mieux de mettre à jour le cordova Android moteur vers la dernière version. Sa version sdk cible par défaut est déjà 28 . (voir https://github.com/Apache/cordova-Android/issues/791 ). Le changer uniquement dans config.xml vient de revenir avec un tas d'erreurs rarement.
https://cordova.Apache.org/docs/en/latest/config_ref/#engine
Cela m'a aidé:
Dans le fichier: paltforms/Android/app/src/main/androidmanifest.xml
Modifiez la valeur "Android: targetSdkVersion":
<uses-sdk Android:minSdkVersion="16" Android:targetSdkVersion="28" />
https://forum.ionicframework.com/t/Android-compatibility-api-level-cordova-or-ionic/8194/14
Mettez à jour Cordova, puis générez à nouveau.
npm i -g cordova
ionic cordova build --release Android --prod