#android #cordova #ionic-framework #cordova-android
Вопрос:
всего через несколько дней нам необходимо обновить наше ядро Cordova до версии 10, чтобы выполнить новые социальные требования (например. Facebook).
Мы столкнулись с проблемой во время сборки.
Даже если мы добавляем спецификацию «двигатель» внутри config.xml файл, в журнале возвращается следующее сообщение:
No platforms added to this project. Please use `cordova platform add lt;platformgt;`.
В нашей конфигурации сборки версия cordova-%platform% должна быть указана внутри этого файла, что до версии 9.0.1 работает как заклинание. Поэтому, пожалуйста, не предоставляйте решение, которое включает выполнение вышеуказанной команды перед выполнением сборки приложения.
Мы строим с помощью команды:
cordova build android
Итак, как можно указать версию платформы в проекте Cordova с помощью этой новой версии Cordova ?
Здесь, под нашим config.xml файл (шаблон)
lt;?xml version='1.0' encoding='utf-8'?gt; lt;widget android-activityName="appName" id="com.companyName.appName" xmlns="http://www.w3.org/ns/widgets" xmlns:android="http://schemas.android.com/apk/res/android" xmlns:gap="http://phonegap.com/ns/1.0"gt; lt;namegt;APP_TOBUILD_NAMElt;/namegt; lt;descriptiongt;app_descriptionlt;/descriptiongt; lt;author email="sviluppo@companyName.com" href="https://www.companyName.com/"gt; Contact us lt;/authorgt; lt;content src="index.html" /gt; lt;engine name="android" spec="10.0.0"/gt; lt;engine name="ios" spec="6.2.0" /gt; lt;!-- Permissions --gt; lt;access origin="*"/gt; lt;allow-intent href="sms:*" /gt; lt;allow-intent href="tel:*" /gt; lt;allow-intent href="geo:*" /gt; lt;allow-intent href="mailto:*" /gt; lt;allow-intent href="file://*/*" /gt; lt;allow-intent href="http://*/*" /gt; lt;allow-intent href="https://*/*" /gt; lt;allow-navigation href="http://*/*" /gt; lt;allow-navigation href="https://*/*" /gt; lt;!-- SCHEME and DOMAIN --gt; lt;preference name="scheme" value="ionic" /gt; lt;preference name="hostname" value="localhost" /gt; lt;preference name="Scheme" value="ionic" /gt; lt;preference name="iosScheme" value="ionic" /gt; lt;preference name="Hostname" value="localhost" /gt; lt;preference name="WKPort" value="" /gt; lt;!-- Preferences --gt; lt;preference name="webviewbounce" value="false" /gt; lt;preference name="KeyboardResize" value="false" /gt; lt;preference name="BackupWebStorage" value="none" /gt; lt;preference name="DisallowOverscroll" value="true" /gt; lt;preference name="StatusBarStyle" value="lightcontent" /gt; lt;preference name="StatusBarOverlaysWebView" value="false" /gt; lt;preference name="KeyboardDisplayRequiresUserAction" value="false"/gt; lt;!-- Splash screen --gt; lt;preference name="AutoHideSplashScreen" value="true" /gt; lt;preference name="ShowSplashScreenSpinner" value="false" /gt; lt;preference name="FadeSplashScreenDuration" value="400" /gt; lt;preference name="SplashScreenDelay" value="3000" /gt; lt;!-- Hooks --gt; lt;!-- lt;hook src="www/hooks/fwk-after-prepare-hooks.js" type="after_prepare" /gt; --gt; lt;!-- lt;hook src="www/hooks/fwk-after-plugin-add-hooks.js" type="after_plugin_add" /gt; lt;hook src="www/hooks/fwk-after-prepare-copy-build-extra-hooks.js" type="after_prepare" /gt; lt;hook src="www/hooks/fwk-after-compile-hooks.js" type="after_compile" /gt; lt;hook src="www/hooks/fwk-before-build-hooks.js" type="before_build" /gt; --gt; lt;!-- Android --gt; lt;platform name="android" spec="10.0.0"gt; lt;preference name="AndroidXEnabled" value="true" /gt; lt;!-- SDK version --gt; lt;preference name="android-maxSdkVersion" value="30" /gt; lt;preference name="android-targetSdkVersion" value="30" /gt; lt;preference name="android-minSdkVersion" value="22" /gt; lt;!-- Resources --gt; lt;icon density="ldpi" src="www/res/icon/android/icon-ldpi.png" /gt; lt;icon density="mdpi" src="www/res/icon/android/icon-mdpi.png" /gt; lt;icon density="hdpi" src="www/res/icon/android/icon-hdpi.png" /gt; lt;icon density="xhdpi" src="www/res/icon/android/icon-xhdpi.png" /gt; lt;icon density="xxhdpi" src="www/res/icon/android/icon-xxhdpi.png" /gt; lt;icon density="xxxhdpi" src="www/res/icon/android/icon-xxxhdpi.png" /gt; lt;icon src="www/res/icon/android/icon-market.png" /gt; lt;icon src="www/res/icon/android/icon.png" /gt; lt;resource-file src="www/google-services.json" target="/app/src/debug/google-services.json" /gt; lt;resource-file src="www/res/icon/android/icon-ldpi.png" target="res/drawable-ldpi/icon.png" /gt; lt;resource-file src="www/res/icon/android/icon-mdpi.png" target="res/drawable-mdpi/icon.png" /gt; lt;resource-file src="www/res/icon/android/icon-hdpi.png" target="res/drawable-hdpi/icon.png" /gt; lt;resource-file src="www/res/icon/android/icon-xhdpi.png" target="res/drawable-xhdpi/icon.png" /gt; lt;splash density="ldpi" src="www/res/splashscreen/android/ldpi.png" /gt; lt;splash density="mdpi" src="www/res/splashscreen/android/mdpi.png" /gt; lt;splash density="hdpi" src="www/res/splashscreen/android/hdpi.png" /gt; lt;splash density="xhdpi" src="www/res/splashscreen/android/xhdpi.png" /gt; lt;splash density="xxhdpi" src="www/res/splashscreen/android/xxhdpi.png" /gt; lt;splash density="xxxhdpi" src="www/res/splashscreen/android/xxxhdpi.png" /gt; lt;/platformgt; lt;!-- iOS --gt; lt;platform name="ios"gt; lt;!-- CORS --gt; lt;!-- From cordova-ios 6.x doc. --gt; lt;preference name="scheme" value="ionic" /gt; lt;preference name="hostname" value="localhost" /gt; lt;!-- From cordova-plugin-ionic-migrate-storage github --gt; lt;preference name="Scheme" value="ionic" /gt; lt;preference name="iosScheme" value="ionic" /gt; lt;preference name="Hostname" value="localhost" /gt; lt;preference name="WKPort" value="" /gt; lt;!-- Storage Porting --gt; lt;!-- From 'file__0.localstorage' format to 'app_localhost_0.localstorage' --gt; lt;preference name="MIGRATE_STORAGE_ORIGINAL_SCHEME" value="file" /gt; lt;preference name="MIGRATE_STORAGE_ORIGINAL_HOSTNAME" value="" /gt; lt;preference name="MIGRATE_STORAGE_ORIGINAL_PORT_NUMBER" value="0" /gt; lt;!-- Resouces --gt; lt;resource-file src="www/GoogleService-Info.plist" /gt; lt;icon height="20" src="www/res/icon/ios/Icon-20.png" width="20" /gt; lt;icon height="48" src="www/res/icon/ios/AppIcon24x24@2x.png" width="48" /gt; lt;icon height="55" src="www/res/icon/ios/AppIcon27.5x27.5@2x.png" width="55" /gt; lt;icon height="88" src="www/res/icon/ios/AppIcon44x44@2x.png" width="88" /gt; lt;icon height="172" src="www/res/icon/ios/AppIcon86x86@2x.png" width="172" /gt; lt;icon height="196" src="www/res/icon/ios/AppIcon98x98@2x.png" width="196" /gt; lt;icon height="29" src="www/res/icon/ios/Icon-Small.png" width="29" /gt; lt;icon height="40" src="www/res/icon/ios/Icon-Small-40.png" width="40" /gt; lt;icon height="40" src="www/res/icon/ios/AppIcon24x24@2x.png" width="40" /gt; lt;icon height="40" src="www/res/icon/ios/Icon-20@2x.png" width="40" /gt; lt;icon height="50" src="www/res/icon/ios/Icon-50.png" width="50" /gt; lt;icon height="57" src="www/res/icon/ios/Icon.png" width="57" /gt; lt;icon height="58" src="www/res/icon/ios/AppIcon29x29@2x.png" width="58" /gt; lt;icon height="60" src="www/res/icon/ios/Icon-20@3x.png" width="60" /gt; lt;icon height="58" src="www/res/icon/ios/Icon-Small@2x.png" width="58" /gt; lt;icon height="72" src="www/res/icon/ios/Icon-72.png" width="72" /gt; lt;icon height="76" src="www/res/icon/ios/Icon-76.png" width="76" /gt; lt;icon height="80" src="www/res/icon/ios/Icon-Small-40@2x.png" width="80" /gt; lt;icon height="80" src="www/res/icon/ios/AppIcon40x40@2x.png" width="80" /gt; lt;icon height="80" src="www/res/icon/ios/Icon-Small-40@2x.png" width="80" /gt; lt;icon height="87" src="www/res/icon/ios/Icon-Small@3x.png" width="87" /gt; lt;icon height="87" src="www/res/icon/ios/AppIcon29x29@3x.png" width="87" /gt; lt;icon height="100" src="www/res/icon/ios/Icon-50@2x.png" width="100" /gt; lt;icon height="114" src="www/res/icon/ios/Icon@2x.png" width="114" /gt; lt;icon height="120" src="www/res/icon/ios/Icon-60@2x.png" width="120" /gt; lt;icon height="120" src="www/res/icon/ios/Icon-Small-40@3x.png" width="120" /gt; lt;icon height="144" src="www/res/icon/ios/Icon-72@2x.png" width="144" /gt; lt;icon height="152" src="www/res/icon/ios/Icon-76@2x.png" width="152" /gt; lt;icon height="167" src="www/res/icon/ios/Icon-83.5@2x.png" width="167" /gt; lt;icon height="180" src="www/res/icon/ios/Icon-60@3x.png" width="180" /gt; lt;icon height="1024" src="www/res/icon/ios/icon-1024.png" width="1024" /gt; lt;splash src="www/res/splashscreen/ios/Default@2x~universal~anyany.png"/gt; lt;/platformgt; lt;!-- PLUGINS LIST --gt; lt;!-- LIST --gt; lt;!-- PLUGIN_DEFINITIONS --gt; lt;/widgetgt;
Заранее спасибо
Комментарии:
1. использовать
ionic cordova build android
2. Спасибо Мостафе Харду за ответ. К сожалению, наша структура дирекции проекта не является ионной, поэтому, используя ваше предложение, в журнале мы видим: [ОШИБКА] Извините! сборка ionic cordova может быть запущена только в каталоге проекта Ionic.