使用 Android Studio 定位 API 8 (Android 2.2) 会导致合并失败错误



我正在尝试为一部非常旧的手机创建一个简单的应用程序:

HTC Aria, Android 2.2, API level 8

在 Android Studio 中,当我安装 SDK 版本 8 并在 build.gradle 中设置 minSdkVersion/targetSdkVersion 时,它拒绝构建。

在"文件>项目结构"中更改 API 级别也不起作用。错误如下:

Error:Execution failed for task ':app:processDebugManifest'. Manifest merger failed : uses-sdk:minSdkVersion 8 cannot be smaller than version 14 declared in library [com.android.support:appcompat-v7:26.1.0] /home/oliver/.gradle/caches/transforms-1/files-1.1/appcompat-v7-26.1.0.aar/ccbf7c84a168d3e32184f6d6f1423c07/AndroidManifest.xml as the library might be using APIs not available in 8
Suggestion: use a compatible library with a minSdk of at most 8,
or increase this project's minSdk version to at least 14,
or use tools:overrideLibrary="android.support.v7.appcompat" to force usage (may lead to runtime failures)

添加覆盖库无济于事,错误只是切换到抱怨不同的库。在Android Studio中还可以创建Android 2.2/API 8应用程序吗?如果是这样,我该怎么做?

您不能使用API 低于 14 的最新 Android 支持库。

注意:从支持库版本 26.0.0(2017 年 7 月)开始,大多数支持库支持库支持的最低 API 级别已提高到 Android 4.0(API 级别 14)对于大多数库包。有关详细信息,请参阅本文档中的版本支持和包名称。


在Android Studio中还可以创建Android 2.2/API 8应用程序吗?

是的

如果是这样,我该怎么做?

使用较旧的支持库(26.0.0 以下的任何内容)或根本不使用支持库。将自己限制为 API 8 及更低版本中可用的类和方法。

在 2019 年创建 Froyo [SDK INT: 8] 应用程序被证明有点困难......

长话短说,我必须这样做来克服GooglePlay控制台中的一个缺陷,该缺陷阻止我更新我的应用程序。 [与新的短信权限策略相关]

在 Android Studio 3.2.1 中创建最低 SDK INT 为 8 的 Android 应用的过程:

文件 -> 新建
  • -> 新建项目
  • 您现在必须选择最低版本 15,因为它与下拉菜单当前一样低 [注意:安装 Froyo SDK 也无济于事]
  • 选择"不添加活动"以保持项目简单。
  • 构建项目后,进入应用级 build.gradle 文件并将最小 SDK 更改为 8
  • 进入 AndroidManifest.xml 文件并删除任何与主题相关的代码
  • 进入值/样式.xml文件并删除任何与主题相关的代码
  • 手动创建自己的活动 [警告:不要执行"文件 -> 新建 -> 活动",因为它将开始在整个项目的多个位置插入支持库代码]
    • 创建派生自 Activity 的简单类
    • 在 res/layout 目录中为其创建布局
    • 将活动标记添加到清单

就是这样。我能够在我的奥利奥设备上安装一个最小的 Froyo [SDK INT: 8] 应用程序。

最新更新