Как я могу опубликовать, чтобы воспроизвести x86 и ARM apks моего приложения cordova-crosswalk?
Мое приложение разработано/опубликовано с помощью Кордовы и Crosswalk. Crosswalk генерирует apk для ARM cpus и еще один для x86 cpus.
В настоящий момент, когда я загружаю ARM apk в магазин воспроизведения, а затем пытаюсь загрузить x86, он мешает мне это сделать и отображать сообщение, в котором говорится, что я не могу иметь два apk с тем же кодом версии.
Кажется, что можно загрузить в хранилище несколько файлов apk для той же версии приложения byt, которое фильтрует устройства, настроенные на каждый файл apk.
Однако, по-видимому, требуется использование файла "Application.mk", который по умолчанию не имеет структуры проекта Cordova.
Как я могу добавить файл Application.mk в свои apks, чтобы как ARM, так и x86 с тем же кодом версии были загружены в Play Store?
Ответы
Ответ 1
Это абсолютно возможно.
Эта функция получает имя: Несколько APK
Вам не нужно использовать "Application.mk"
Процесс прост:
- В консоли разработчика перейдите в Расширенный режим (нажмите кнопку "Переключиться в расширенный режим" в верхнем правом углу вкладки APK - обратите внимание, что вы должны загрузить как минимум один APK для этой кнопки )
- Загрузите два APK
- Опубликовать!
Есть несколько правил использования нескольких APK, но если вы используете файлы, созданные с помощью пешеходного перехода cordova, вам не о чем беспокоиться.
Проблема, которую вы описали с кодом версии, имеет значение beacuse , каждое приложение должно иметь другой код версии. В моем случае я использую ионную структуру (расширяет кордову) и в процессе сборки, она генерировала другой код версии для каждого apk, поэтому у меня не было проблем. Если это не так, вы можете попытаться изменить файл android: versionCode непосредственно в файле AndroidManifest.xml.
Вот как выглядит мой манифест:
<manifest
android:hardwareAccelerated="true"
android:versionCode="102"
android:versionName="0.1.2"
package="br.org.yyyyyyy.xxxxxxxxxx"
xmlns:android="http://schemas.android.com/apk/res/android">
В моем случае arm7 apk,
Android: VersionCode = "102"
И в x86 apk
андроида: VersionCode = "104"
Литература:
Android Несколько APKs DOC
Поддержка нескольких APKs DOC
Ответ 2
Я делаю простой способ. Например, ваш основной код v равен 102, поэтому вы создаете первый рычаг с кодом 102 v и загружаете. Пока вы не загрузите, вы можете перейти на v-код в манифест, а в классе сборки - на 103 и построить еще один x86. Легко и просто.
Ответ 3
Я думаю, что в прошлом году все изменилось. Я использовал один и тот же код версии и загружал оба apks (по одному - обычным способом). Google Play автоматически обнаружил, что они были нацелены на разные собственные платформы и позволили им быть введенными в производство.
Ответ 4
cordova-crosswalk doc инструктирует, как сделать apk, который работает как для руки, так и для x86. Проблема в том, что он делает огромный apk.
Если вы действительно хотите сделать два apks, вы можете попробовать (извините, пока не протестировали), чтобы создать файл Application.mk на платформах папок /android/jni
Для руки вы поместите эту строку в Application.mk:
APP_ABI := armeabi armeabi-v7a
А для intel x86:
APP_ABI := x86
И вы должны изменить AndroidManifest.xml, чтобы иметь другую версию для каждой платформы (следуя инструкциям в приведенной ссылке).
Будьте осторожны, если вы снова запустите corova build android, он, вероятно, заменит все содержимое платформ /android, и ваши изменения будут потеряны.
Чтобы использовать проект,
platforms\android\cordova\build.bat -release
вместо
cordova build android --release