cordova build --release android总是选择最高的api级别

Din*_*esh 19 android cordova ionic-framework

我正在尝试使用ionicframework为android构建我的cordova应用程序.我已将目标API级别设置为16(我已经从Android SDK管理器安装了它)但它总是以21级的方式获得.

在project/config.xml中:

 <preference name="android-targetSdkVersion" value="16"/>
Run Code Online (Sandbox Code Playgroud)

在platforms/android/AndroidManifest.xml中,它显示相同:

 <uses-sdk android:minSdkVersion="10" android:targetSdkVersion="16" />
Run Code Online (Sandbox Code Playgroud)

但是跑步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
Run Code Online (Sandbox Code Playgroud)

我怀疑我错过了一些设置,会很感激帮助.我使用了这个离子文档中的方法

离子:1.0.0.rc-5,离子CLI:1.3.22,cordova:5.0.0,节点:0.10.36 - 在Windows7上

- 编辑

似乎目标水平根本没有关系.我现在想知道它是如何/在哪里变得重要.

Mr *_*ind 17

在最新的离子框架中,您可以通过更改来更改目标

ion1 /平台/安卓/ AndroidManifest.xml中

并使用16将22更改为这两个文件

ion1 /平台/安卓/ project.properties

ion1 /平台/安卓/ CordovaLib/project.properties

ion1 =我的项目基础文件夹


Mah*_*hen 6

npm install -g cordova 
Run Code Online (Sandbox Code Playgroud)

上面的命令总是安装最新的cordova-android-version,所以android-target是最新的.所以我们可以通过安装适当的cordova版本来解决上述问题.

你可以使用这个命令安装适当版本的cordova npm install -g cordova@5.0.0,其中5.0.0是cordova-android-version.all版本的cordova可以使用以下命令查看.

npm view cordova versions
Run Code Online (Sandbox Code Playgroud)

4.1.X(cordova-android版)支持14-22(API级别)和

5.XX(cordova-android版)支持14-23(API级别)


cfp*_*bhu 2

所以这段 xml 做了两件事,设置 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更新项目--subprojects--path“platforms/android”--target android-14--library“CordovaLib”

然后按照您的建议修改 AndroidManifest.xml 文件,现在所有调试状态级别为 14 并且已编译。我刚刚再次向我的好友发送了一份副本......我们将看看它是否有效!