【问题标题】:Deploying multiple APK with vector asset (android)使用矢量资源部署多个 APK (android)
【发布时间】:2016-02-24 08:51:05
【问题描述】:

android studio 目前支持vector assets。根据文献我可以

为不同的 API 级别创建单独的 APK。当你不包括 APK for Android 5.0(API 级别)中对应的光栅图像 21) 及更高版本,APK 的大小可以小得多。更多 信息,请参阅多 APK 支持。

所以我尝试创建 2 个 API:-

  • pre-lollipop 版本包含生成的 png,不包含矢量资源,
  • 虽然棒棒糖版本仅包含矢量资产

http://developer.android.com/google/play/publishing/multiple-apks.html

如果您为 API 级别 4 及以上 (Android 1.6+) 上传的 APK 的版本代码为 0400,那么 API 级别 8 及以上 (Android 2.2+) 的 APK 必须为 0401 或更高版本。在这种情况下,API 级别是唯一支持使用的过滤器,因此版本代码必须与每个 APK 的 API 级别支持相关性增加,以便用户在收到系统更新时获得更新。

以下是我的 gradle 构建文件。

compileSdkVersion 23
buildToolsVersion "23.0.2"
defaultConfig {
    applicationId "twitch.angelandroidapps.matchit"
}
productFlavors { 
    lollipopConfig {
        minSdkVersion 21
        targetSdkVersion 23
        versionCode 3
        versionName "21.1.0"
    }
    preLollipopConfig {
        minSdkVersion 10
        maxSdkVersion 20
        targetSdkVersion 17
        versionCode 2
        versionName "10.1.0"
    }
} 
:
//snipped the rest of the build config...
:

但是,当我首先部署棒棒糖前版本,然后是棒棒糖版本时,棒棒糖前版本被存档(反之亦然)。

关于如何在 Play 商店中部署这两个版本有什么建议吗?

【问题讨论】:

  • 我把部署顺序搞混了......它是棒棒糖 -> 棒棒糖前 -> 棒棒糖。

标签: android apk


【解决方案1】:

我想通了。

当我第一次部署棒棒糖和前棒棒糖时,它们会自动存档。

出于某种奇怪的原因,我必须通过单击“移动到产品”手动将棒棒糖前的版本重新投入生产环境才能正常工作。

之后,Playstore 将显示一个新的“API LEVELS”列。

关于拥有更大版本代码的文献似乎也是错误的。棒棒糖前版本需要始终是较低的版本代码(可能是因为我的 API 级别不重叠?)。无论如何,我现在可以部署新的棒棒糖前版本,而无需存档以前的版本。

最后,我使用了

的命名约定
  • 21xxxx 用于棒棒糖版本和
  • 10xxxx 用于棒棒糖前的版本

希望对你有帮助。

【讨论】:

    猜你喜欢
    • 2019-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多