当前位置 : 首页 > 徐州软件开发技术论坛 > 谷歌确认将限制Android非SDK接口使用了

谷歌确认将限制Android非SDK接口使用了

作者:徐州软件公司  文章来源:徐州软件公司   阅读次数:119 次
2018-03-03

此文章是徐州软件公司整理的技术资料,由徐州软件公司总务部发布,邮箱:zongwu@xuzhousoft.com

江苏徐软信息科技有限公司江苏徐软信息科技有限公司

引用
译者|核子可乐

编辑|覃云

上个月,我们曾报道过Android 9.0 将禁止使用非官方 API,引起了开发者的热烈的讨论,时隔一个多月,Android 团队终于发声证实了这个说法,声称从 Android 9.0 开始,对非 SDK 的 API 的限制从 NDK 扩展到 Java,并表明这样做的目的是为了提高系统的稳定性,接下来,我们来看看他们是怎么说的。

谷歌声明全文

在 Android 系统当中,我们一直在寻找各种方法以尽可能保证理想的稳定性,从而改善用户与开发人员体验。本着这一思路,我们努力确保应用程序不使用非 SDK 接口,因为此类作法往往会导致用户遭遇崩溃,并给开发人员的紧急发布造成困扰。

在 Android N 当中,我们限制了 C/C++ 代码所能使用的符号组合。此项变更确保使用 C++ 代码的应用程序能够始终对接稳定的 NDK 接口,而不会因依赖于不稳定的非 NDK 接口而引发崩溃机率提升。从 Android 的下一个版本开始,我们将进一步扩展此类限制,从而涵盖 SDK 的 Java 语言接口以进一步巩固稳定性水平。

将带来哪些影响?

自 Android 的下一个版本开始,非 SDK 方法与字段的使用将受到限制,您将无法对其进行访问——无论通过直接、反射或者 JNI 等方式。如果加以尝试,您会看到 NoSuchFieldException 或者 NoSuchMethodException 等错误提示。

最初,此项限制主要涵盖使用率较低或并未得到实际使用的接口。我们在规划与设计工作当中,充分重视我们的开发者社区,并希望在解决用户及设备制造商所反馈的应用程序稳定性问题的同时,尽可能避免引入大幅度变更。如果您在实际开发当中存在一些能够迁移至 SDK 进行解决,但在技术层面存在挑战性的需求,我们将允许您继续使用原有方法,直到您逐步将应用程序更新至最新 API。

我们计划在未来的 Android 版本当中进一步扩大这些限制,为开发人员提供充分的迁移时间,同时长期发布警报通告,并在此期间收集与所需 SDK 接口相关的反馈意见。我们一直在强调使用非 SDK 接口的风险性影响——当我们重构代码以添加功能或修复 bug 时,使用非 SDK 接口可能在各类 Android 版本当中引发不可知的变化。因此,如果您的应用程序目前仍依赖于非 SDK 接口,则应尽快着手向 SDK 备选方案进行迁移。

由于 Java 语言与 C++ 在特性方面存在巨大差异,因此对 Java 语言的具体限制方式将与立足符号的 C++ 限制略有区别。您不应访问不属于我们 SDK 的类,同时亦需要确保仅使用各个类当中被纳入官方文档的部分。具体来讲,这意味着当您通过反射等语义与某个类进行交互时,所访问的方法或字段皆在 SDK 当中得以明确列出。

如果缺少 SDK 替代选项,该如何处理?

我们知道,某些应用程序所使用的非 SDK 接口可能还找不到可行的 SDK 替代选项。我们非常重视您对于公共 API 扩展及改进方面提出的反馈意见。如果您确信在 SDK API 得到对应扩展之前无法停止使用非 SDK 接口,请通过我们的 bug 追踪器提供相关信息。及时获取这些反馈意见对我们来说非常重要,我们需要利用这部分资讯继续调整限制黑名单,从而最大限度降低此次迁移对开发人员的影响,同时着手为未来将陆续推出的各 Android 系统平台开发一切必要的替代方案。

接下来将发生哪些变化?

在下一个 Android 开发者预览版当中,您将能够运行现有应用程序,并在使用非 SDK 接口时收到警告提示——该接口将在最终版本中受到黑名单或灰名单机制的限制。请确保您的应用在开发者预览版中始终遵循最佳实践 ; 另外,如果您担心自己的应用可能受到影响,请特别关注接口兼容性警告信息。

利用即将推出的开发者预览版与新的 bug 追踪器目录,我们将专注于监控非 SDK 接口的使用情况。如果相关接口已经拥有官方支持的 SDK 替代选项,我们将发布官方指南以帮助您了解如何从非 SDK 接口迁移至官方支持方案。

江苏徐软信息科技有限公司(简称徐州软件公司)是徐州软件公司中成立时间最长、技术能力最强、经济实力最雄厚的徐州软件开发公司之一,专业的徐州软件开发团队,从事徐州软件开发10年,一直保持着徐州软件开发行业排头兵的地位。徐州软件公司徐州软件开发行业内的众多徐州软件开发公司保持着良好的合作关系,是徐州软件开发行业的领航者之一。徐州软件公司立足徐州软件开发市场,主攻徐州软件开发徐州APP开发徐州软件公司徐州ERP软件开发徐州OA软件开发徐州CRM软件开发等领域拥有大量经典案例。更多信息请访问徐州软件公司官方网站:

徐软com:http://www.xuzhousoft.com  徐软cn:http://www.xuzhousoft.com.cn
徐软app:http://app.xuzhousoft.com  淮北徐软:http://huaibei.xuzhousoft.com.cn
济宁徐软:http://jining.xuzhousoft.com.cn  亳州徐软:http://bozhou.xuzhousoft.com.cn
菏泽徐软:http://heze.xuzhousoft.com.cn  宿州徐软:http://suzhou.xuzhousoft.com.cn
枣庄徐软:http://zaozhuang.xuzhousoft.com.cn  宿迁徐软:http://suqian.xuzhousoft.com.cn
商丘徐软:http://shangqiu.xuzhousoft.com.cn  连云港徐软:http://lianyungang.xuzhousoft.com.cn
莱芜徐软:http://laiwu.xuzhousoft.com.cn  泰安徐软:http://taian.xuzhousoft.com.cn
日照徐软:http://rizhao.xuzhousoft.com.cn  开封徐软:http://kaifeng.xuzhousoft.com.cn
周口徐软:http://zhoukou.xuzhousoft.com.cn  盐城徐软:http://yancheng.xuzhousoft.com.cn
淮安徐软:http://huaian.xuzhousoft.com.cn  阜阳徐软:http://fuyang.xuzhousoft.com.cn
蚌埠徐软:http://bengbu.xuzhousoft.com.cn  临沂徐软:http://linyi.xuzhousoft.com.cn
邳州徐软:http://pizhou.xuzhousoft.com.cn  新沂徐软:http://xinyi.xuzhousoft.com.cn
沛县徐软:http://peixian.xuzhousoft.com.cn  睢宁徐软:http://suining.xuzhousoft.com.cn
丰县徐软:http://fengxian.xuzhousoft.com.cn  萧县徐软:http://xiaoxian.xuzhousoft.com.cn
砀山徐软:http://dangshan.xuzhousoft.com.cn  微山徐软:http://weishan.xuzhousoft.com.cn
永城徐软:http://yongcheng.xuzhousoft.com.cn  网络营销:http://www.f168yingxiao.com
徐州系统集成公司:http://www.0516app.com

关键字标签:徐州软件公司 徐州软件开发公司 徐州APP软件开发公司 徐州ERP软件开发公司 徐州CRM软件开发公司 徐州OA软件开发公司

下载DOC版 下载PDF版

* 以上内容由 徐州软件公司 整理


关于我们

    江苏徐软信息科技有限公司(简称徐州软件)位于国家大学科技园内,成立于2005年,注册资金1000万元,是徐州地区最具实力的集软件开发、电子商务技术服务、门户网站建设、系统集成、网络工程为一体的高科技IT技术公司之一。

技术支持

  • 售后服务电话:0516-83003411
  • 售后服务QQ:412110939
  • 售后服务邮箱:
    service@xuzhousoft.com
  • 售后投诉电话:18795428064
徐州软件公司
    扫描微信二维码即可获得
    免费信息化咨询服务

Copyright© 2005 江苏徐软信息科技有限公司 All Rights Reserved.
苏公网安备 32030302000144号  苏ICP备11059116号-5

地址:江苏省徐州市云龙区和平路57号江苏师范大学科技园4F  徐州软件公司
电话:0516-83737996 邮箱:sales@xuzhousoft.com

江苏徐软信息科技有限公司地图
江苏徐软信息科技有限公司地图
点这里关闭本窗口
×