如何更改 Android 项目的目标构建?
Posted
技术标签:
【中文标题】如何更改 Android 项目的目标构建?【英文标题】:How to change target build on Android project? 【发布时间】:2011-03-21 12:59:37 【问题描述】:我目前在 Eclipse 中有一个 android 项目。
我使用 1.5 (sdk 3) 的目标版本创建它。
现在我想更改它,使其 minSdk 为 3,targetSdk 为 8。
为此,我发现我必须针对最新的 SDK (2.2) 进行构建
要在 Eclipse 中执行此操作,我右键单击我的项目,转到属性,单击 Android 并将项目构建目标更改为 Android 2.2,然后单击应用,然后确定。
但这似乎没有任何影响,当我再次尝试时,目标构建被设置回 Android 1.5。
我错过了一步吗?
【问题讨论】:
【参考方案1】:右键单击项目,然后单击“属性”。然后从左侧的树中选择“Android”。然后您可以在右侧选择目标版本。
(请注意下面的流行评论,确保您的属性、类路径和项目文件是可写的,否则将无法正常工作)
【讨论】:
原来我的属性、类路径和项目文件被设置为不可写,这就是为什么它没有工作,现在工作,谢谢 我遇到了同样的问题。源代码控制导致文件不可写并阻止切换。您没有收到任何警告或指示存在问题......它只是没有切换。如果其他人遇到这种情况,请确保您“签出以进行编辑”或源代码管理库中的任何正确操作。 有什么方法可以设置默认选项?对于多个 APK,每次都必须设置这个有点烦人...... @DonalRafferty 如何检查它们是否可写?以及如何使它们可写? @Muhammad Babar 我正在使用 Visual Source safe,它会自动将文件设为只读。我刚刚取消选中文件上的只读框,当时我使用的是 Windows 机器。【参考方案2】:您可以随时更改项目的构建目标:
在 Package Explorer 中右键单击项目,选择 Properties,选择 Android,然后检查所需的 Project Target。
在 AndroidManifest.xml 文件中编辑以下元素(它位于您的项目根目录中)
在这种情况下,这将是:
<uses-sdk android:minSdkVersion="3" />
<uses-sdk android:targetSdkVersion="8" />
保存
重建您的项目。
点击菜单栏上的项目,选择清理...
现在,再次运行项目。
右键单击项目名称,继续运行,然后选择 Android 应用程序
顺便说一下,查看Managing Projects from Eclipse with ADT 会有所帮助。尤其是名为创建 Android 项目的部分。
【讨论】:
提示:完成所有这些步骤后,重新启动 Eclipse。这可以创造奇迹。 同意!在 Eclipse 重新启动之前,我无法使其正常工作。 在 Android Studio 中,我必须将这些行合并在一起。不确定这是否特定于 Android Studio,或者清单格式自发布以来是否需要更改。例如:<uses-sdk android:minSdkVersion="16" android:targetSdkVersion="21" />
@Alan 我会很密集,但是你到底在哪里点击第一个点...包资源管理器...我在任何地方都看不到任何属性! :- (【参考方案3】:
如果您使用 ant,在命令行上的另一种方法是使用 android.bat 脚本 (Windows) 或 android 脚本 (Mac)。它在 $SDK_DIR/tools 中。
如果你说,
android.bat update project --path . --target "android-8"
它将重新生成您的 build.xml、AndroidManifest.xml 等。
【讨论】:
【参考方案4】:有三种方法可以解决此问题。
右键单击项目并单击“属性”。 然后从左侧选择“Android”。然后您可以选择目标版本 从右侧。
右键单击项目并选择“运行方式”,然后将打开一个下拉列表。 从下拉列表中选择“运行配置”。然后将打开一个表单, 从“Form”中选择“Target”选项卡,并选择 Android Version Api , 要在其上执行应用程序,这是检查的最快方法 您的应用程序在不同的目标版本上。
在 AndroidManifest.xml 文件中编辑以下元素
xml:
<uses-sdk android:minSdkVersion="3" />
<uses-sdk android:targetSdkVersion="8" />
【讨论】:
【参考方案5】:我同意 Ryan Conrad 关于如何在 Eclipse 中执行此操作的观点,你确定你已经更改了 manifest.xml 吗?
<uses-sdk android:minSdkVersion="3" />
<uses-sdk android:targetSdkVersion="8" />
【讨论】:
【参考方案6】:项目出错时有时会出现该问题。
例如,如果您的项目配置了 3.2 的目标,但 3.2 的库不可用,您将无法将版本更改为 4.0!
我使用的通常(也许是残酷的)解决方案是创建一个具有正确目标的新项目,并将 src、res 和 manifest 复制到新项目中。
更新:
这似乎有效:
-
正常通过构建属性更改选择
手动编辑 project.properties 和 default.properties 以确保
它们都反映了预期的目标。
关闭项目并重新打开它
我总是运行 Android 工具 |在对构建目标进行任何更改后修复项目属性。
【讨论】:
【参考方案7】:default.properties
文件默认为只读,更改它对我有用。
【讨论】:
【参考方案8】:您的文件中不应有多个“uses-sdk”标签。参考 - docs
Use this syntax:
<uses-sdk android:minSdkVersion="integer"
android:targetSdkVersion="integer"
android:maxSdkVersion="integer" />
【讨论】:
【参考方案9】:我也有这个问题。对我有用的是在检查新的所需版本之前先取消选中以前选择的 SDK 版本。然后点击确定。
【讨论】:
【参考方案10】:正如迈克的方式所说。在您的项目中执行任何需要更高目标(如 android:installLocation="auto")的操作之前更改目标。
【讨论】:
【参考方案11】:根据 2018 年,targetSdkVersion 可以通过以下方式在您的 app/build.gradle
中设置:
android
compileSdkVersion 26
buildToolsVersion '27.0.3'
defaultConfig
...
targetSdkVersion 26
...
如果您选择 26 作为 SDK 目标,请务必关注 https://developer.android.com/about/versions/oreo/android-8.0-migration
【讨论】:
【参考方案12】:右键项目->属性->android->选择目标名称--设置目标--点击确定
【讨论】:
【参考方案13】:获取 sdk 29- android 10:
单击工具 > SDK 管理器。
在 SDK 平台选项卡中,选择 Android 10 (29)。
在 SDK Tools 选项卡中,选择 Android SDK Build-Tools 29(或更高版本)。
点击确定开始安装。
【讨论】:
以上是关于如何更改 Android 项目的目标构建?的主要内容,如果未能解决你的问题,请参考以下文章
MFP CLI 7.1 创建 android 项目目标 23 ,如何更改?
创建新项目后如何在 Android Studio 中更改最小目标 SDK API? [复制]