我在Google Play 商店中有一个小游戏应用程序Deal-O-Round ,大约 7 年前(2014 年 7 月 6 日)提交了相同的 APK https://smile.amazon.com/Csaba-Toth-Deal-O-Round /dp/B00LK8VBLS/)到亚马逊移动市场。2014 版本基于Google PlayN框架,除了 Android 和 iOS 平台外,还允许基于 Web 的演示。很多时间过去了,去年我在 Flutter 中重新实现了整个游戏,它还允许构建除 Android 和 iOS 之外的基于 Web 的演示。
最近,我收到一封来自亚马逊的电子邮件,标题为“[ACTION REQUIRED] App update required for target API Level compliance”,这促使我再次尝试刷新他们商店中的 APK。根据电子邮件,Fire OS 6 版本要求最低 API 级别 25,而 Fire OS 7 要求最低 API 级别 28。这是个好消息,我更新了 Flutter 项目,Gradle 升级将最低 SDK API 级别提高到了 23。目标 API 级别为 29 ,如我的 build.gradle 所示。一切都是开源的 BTW。
android {
compileSdkVersion 29
...
defaultConfig {
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
applicationId "com.dealoround.android"
minSdkVersion 23
targetSdkVersion 29
versionCode flutterVersionCode.toInteger()
versionName flutterVersionName
}
...
我不确定这是否重要,但我的应用程序开发人员控制台下有一个处于未完成状态的“测试项目”(SKU12345)应用程序内项目,它一定是从 2013 年开始的,但我的应用程序没有任何应用内付款。Flutter 版本也没有任何广告,旧版本有(我讨厌一些广告项目)。
我知道使用 min SDK 23 我会放弃对 Fire OS 5 的支持,因为这需要 min SDK 22(顺便说一句,如果需要,我可以恢复到 min SDK 16)。但还有其他问题。我怀疑这可能与 Flutter 无关。我正在使用 V1 和 V2 方法签署 APK。也许是GET_ACCOUNTS
, USE_CREDENTIALS
, or的额外权限WAKE_LOCK
?供参考的是旧的APK:
Google Play 商店中的一切都很好。我正在查看https://developer.amazon.com/docs/app-submission/supported-filters-on-the-amazon-appstore.html,但没有看到无法使用GET_ACCOUNTS
、USE_CREDENTIALS
或WAKE_LOCK
.