Ich muss die ionic/cordova-Anwendung für 32bit (armeabi-v7a und x86) und 64bit (arm64-v8a und x86_64) Plattformen erstellen. Ich baue vier separate APKs Befehle ionic build android --release
und ionic build android --release --xwalk64bit
Alles geht gut, außer dass die version (für Version 0.0.11 gesetzt) ist ein wenig aus - siehe unten Falsche APKs versionCode Reihenfolge beim Erstellen mehrerer APKs für 32bit und 64-Bit-Plattformen mit Zebrastreifen
Das Problem ist, dass x86 und x86_64 müssen höher versionCode dann ARM-apk. Dies ist erforderlich, da x86-Geräte ARM-Bibliotheken verarbeiten können, aber kein ARM-Gerät in der Lage ist, x86-Bibliotheken zu verarbeiten. Also müssen wir den Versionscode von x86 APK höher halten als den von ARM apk, und das richtige APK wird zum richtigen Gerät gehen. Hier
ist das, was ich suche (und was ich schließlich zu schaffen verwaltet) - siehe unten
Das Problem ist, dass die version sowohl build.gradle gesetzt und modifiziert von Überweg mobile-xwalk.gradle, die die falschen Versionen gibt, die meinen oben beschriebenen Build-Ansatz verwenden. Ich versuchte, die version mit android-version param in config.xml und mit cdvVersionCode für build.gradle (siehe http://cordova.apache.org/docs/en/6.x/guide/platforms/android/index.html#configuring-gradle), aber kein Glück zu setzen.
Ich Ende bis das Problem zu beheben, indem Sie mobile-xwalk.gradle manuell ändern, um die richtige VersionCodes für 64-Bit-APKs (wie auf meinem zweiten Screenshot gezeigt). Dies sieht nicht wie die optimale Lösung für mich aus
Frage - Gibt es einen besseren Weg, dieses Problem anzugehen?
ich zu lösen tat das gleiche, außer dass meine Plattformen/android/cordova-plugin-Überweg-Webansicht/** YOUR_APP_SUFFIX ** - xwalk.gradle sieht wie unten .... x86_64 { version defaultConfig.versionCode + 90077 ... arm64 { version defaultConfig.versionCode + 90075 .... –
oder mit Ihrem Ansatz verwalten i mit dem unter android, dies zu beheben { wenn (xwalk64bit! = null) { productFlavors { x86_64 { versionCode defaultC onfig.version * 10 + 6 - 1 NDK { abiFilters "x86_64", "" } } arm64 { version defaultConfig.versionCode * 10 + 9-6 NDK { abiFilters "arm64-V8A", "" } } } } } –