web-dev-qa-db-ja.com

cordova build --release Androidは常に最高のAPIレベルを選択します

Ionicframeworkを使用して、Android用のCordovaアプリを構築しようとしています。ターゲットAPIレベルを16に設定しました(Android SDKマネージャー)からインストールしています)が、どういうわけか常にレベル21を取得します。

project/config.xmlで:

 <preference name="Android-targetSdkVersion" value="16"/>

platform/Android/AndroidManifest.xmlで、同じことを示しています:

 <uses-sdk Android:minSdkVersion="10" Android:targetSdkVersion="16" />

しかし、cordova build --release Android私は得る:

-build-setup:
[getbuildtools] Using latest Build Tools: 22.0.0
     [echo] Resolving Build Target for OpsVedaMobile...
[gettarget] Project Target:   Android 5.0.1
[gettarget] API level:        21

私はいくつかの設定が不足していると思う、助けを感謝します。 this ionic doc のハウツーを使用しました

ionic:1.0.0.rc-5、ionic CLI:1.3.22、cordova:5.0.0、node:0.10.36-Windows7の場合

-編集

ターゲットレベルはまったく問題ではなかったようです。私は今、それがどのように/どこで重要になるのだろうかと思います。

19
Dinesh

最新のionicフレームワークでは、変更することでターゲットを変更できます

ion1/platforms/Android/AndroidManifest.xml

22を16でこれら2つのファイルに変更します

ion1/platforms/Android/project.properties

ion1/platforms/Android/CordovaLib/project.properties

ion1 =プロジェクトのベースフォルダー

17
Mr Megamind
npm install -g cordova 

上記のコマンドは常に最新のcordova-Android-versionをインストールするため、Android-targetは最新のものです。したがって、適切なバージョンのCordovaをインストールすることにより、上記の問題を解決できます。

このコマンドを使用して、適切なバージョンのcordovaをインストールできますnpm install -g [email protected] 5.0.0はcordova-Android-versionです。すべてのバージョンのcordovaは、次のコマンドを使用して表示できます。

npm view cordova versions

4.1.X(cordova-Androidバージョン)は14-22(APIレベル)をサポートし、

5.X.X(cordova-Androidバージョン)は14-23(APIレベル)をサポートします

6
Mahen

したがって、このxmlのビットは2つのことを行い、Androidアプリの最小apiバージョンを設定し、明らかに名前のためにターゲットを設定します。

API 10はAndroid 2.3で、サポートを終了しました。これを14に増やすことができます。またはAndroid 4.0

API 19は4.4であり、すべて良好です。

したがって、これらの番号は、cordovaが作成するデフォルトのプロジェクト構造の一部です。プロジェクトを追加した後、デフォルトのAPIレベルを手動で行う代わりに14と19に変更するフックを作成できます。

しかし、それを変更するには、platforms/Android/android.xmlに移動します。これを編集する場合は、うまくいくはずです。 (または)変更前:

] Androidプロジェクトの更新--subprojects --path "platforms/Android" --target Android-19 --library "CordovaLib"

これを次のように変更しました。

] Android update project --subprojects --path "platforms/Android" --target Android-14 --library "CordovaLib"

そして、AndroidManifest.xmlファイルをあなたが示唆したように修正しました。今ではすべてのデバッグ状態レベル14とコンパイルされました。私はちょうど私の友人にコピーを再び送りました..それが機能するかどうかを確認します!

2
cfprabhu