我在Google Play上发布之前做了报告,并开了12条警告。我的游戏是在2017.1.1单元中制作的,并且我使用的是Android SDK 28。 google向我抛出以下信息:“ Google无法保证以下API可以在当前版本的Android上运行,因为它们位于灰色列表中。某些API可能已受其目标SDK的限制。”
install(Authentication) {
form("login") {
skipWhen { call -> call.sessions.get<AuthSession>() != null }
userParamName = "username"
passwordParamName = "password"
challenge = FormAuthChallenge.Unauthorized
validate { credentials ->
// Handle credentials validations
}
}
}
答案 0 :(得分:0)
这些是指您的应用程序中隐藏的系统级API的用法,最有可能包含在第三方代码中,并且某些功能通常是必需的。对于Android P(28),有light-greylist个隐藏的API当前可以使用,但在以后的版本中可能不推荐使用。还有一个黑名单和黑名单。在您的堆栈跟踪上方,您应该有一行显示API LAndroid/...
的行,您应该能够在不带“ API”的情况下搜索该字符串,并希望可以在上面链接的浅灰色列表中找到它。如果是这样,您现在应该可以。否则,可能会在Android Q中弃用/删除该API,并且您可能需要对其进行修复,然后才能升级以支持SDK29。请注意,如果有列入灰色名单的API的合法用例,则Google应该创建一个新的API来满足这些需求。可以在in this Stack Overflow Answer中找到有关非SDK接口的更多信息。
此Android guide about Non-SDK Restrictions中还提供了有关不同级别的灰名单和分发最佳做法的其他信息。请注意,您可能必须复制此链接并将其粘贴到浏览器中。