在 2018 年 8 月之后,如果 Android 开发者希望他们开发的应用程序能够在 Google Play 应用商店上架,他们将不得不遵守两个新的规定。一是需要支持最近的Android 版本,二是需要增加对Native 代码的64 位支持。除此之外,Google 将会开始通过一些安全元数据(metadata)来改进APK 的真实性验证(authenticity verification)。
Google 表示,要求应用程序支持最近的 API 版本的主要原因是,这样做使得应用程序能够从 Google 对 Android 平台的安全性和隐私性的不断改进中获益。这并不意味着开发人员应该停止对老版本 Android 的支持,Google 仍然鼓励开发者支持老版本的 Android。相反,通过面向新版本 Android 的开发,开发者们能够确保他们的应用程序不再依赖于某些已经被移除的特性(例如, bindService 的隐式 Intent ),或者是一些不当的行为(例如,默认信任用户添加的证书授权CA 或者无需显式批准对用户账户进行访问)。类似地,面向新版本Android 进行开发使得应用程序能够利用平台进行一般性改进,例如,通过后台运行限制来改善电池用量以及内存使用。
Google 要求,从 2018 年 8 月开始,在 Google Play 商店进行上架的新应用程序要修改 Manifest 中的 targetSdkVersion
属性,至少要支持 API level 26(也就是 Android 8.0)。从 2018 年 11 月开始,对应用程序的更新也需要满足同样的要求。在此之后,targetSdkVersion
的最低限度将会随着新版本 Android 的发布不断提升,因此应用程序需要必须要支持一年内最新发布的 Android 版本。据 Google 所说,不符合这一要求的应用程序会在今后的 Android 版本中受到限制。
支持 64 位 CPU 这一规定只会影响那些包含 Native 代码库的应用程序。Google 表示,目前所使用的 Android 设备有超过 40% 提供 64 位支持,在这些设备上运行 64 位的代码可以显著改善性能。Google Play 仍然会支持 32 位的应用程序和设备,因此,可以使用单个 APK 或者多个APK 来提供对32 位以及64 位的支持。由于这一要求将在2019 年8 月生效,开发者们有将近两年的时间将自己的应用程序过渡到64 位。
在2018 年初,Google 将会自动为每一个APK 添加一些元数据,用以证明该应用程序是通过Google Play 正式发布的。这一改动不需要开发者采取任何行动,也不会影响应用程序的行为,但是这一改动会被用于应用程序的更新,这能帮助用户及时更新他们所安装的应用程序。
查看英文原文: Google to Improve Security and Privacy of Google Play Apps
评论