zoukankan      html  css  js  c++  java
  • 2019年5月1日起安卓应用应基于API 26开发,那么API等级是啥?

    2019年5月1日起安卓应用应基于API 26开发,那么API等级是啥?

    转 https://www.ithome.com/html/android/372234.htm
     

    据泰尔终端实验室公众微信号报道,2018年7月18日上午,电信终端产业协会(TAF)发布《移动应用软件高API等级预置与分发自律公约》(以下简称《公约》)。OPPO、华为、百度、360、阿里、小米、vivo、腾讯作为发起单位,共同签署《公约》,并发出联合倡议:号召广大移动应用软件预置与分发服务提供者,拒绝上架并及时更新低API等级的应用,共同维护用户权益。

    《公约》规定,自2019年5月1日起,新上架和预置应用应基于Android 8.0(API等级26)及以上开发。自2019年8月1日起,现有应用的更新应基于Android 8.0(API等级26)及以上开发。八家厂商在签约仪式上郑重承诺:将严格遵守和履行自律公约规定,拒绝上架和更新低API等级应用。

    可能大家对《公约》中所提到的“API等级”这个概念不是很熟悉,那么我们就来聊聊它究竟是一个什么东西。

    一、“API”是什么

    API的全称是“Application Programming Interface”,中文释义为“应用程序编程接口”。在手机或者电脑等的系统中,API是一些预先定义的函数,通过调用这些函数,能够让程序得以使用设备自身的硬件或软件。比如,在用微信进行视频聊天的时候,微信就可以使用手机的前置摄像头。使用API接口可以不用访问底层的源代码,也不用理解内部的工作机制和细节,当访问某些软硬件的时候,直接通过调用要使用的API接口函数就能完成操作,大大提高程序员的工作效率。

    二、“API等级26”是什么

    知道了API的作用之后,我们就来了解一下什么是“API等级26”。在安卓系统中,系统提供了一个框架API,应用可利用它与底层安卓系统进行交互。每个版本的安卓平台都会进行框架API的更新,安卓1.0所对应的API等级为1,其后每个版本的安卓系统都会对API等级进行升级,以整数的形式往后累加。“API等级26”就是最新版本的安卓8.0系统的API等级。

    ▲安卓版本及其对应的API等级

    三、“API等级”的更新原则

    每次对API等级进行升级,都会包含之前系统的API,大多数API更改都是新增更改,会引入新功能或替代功能。在API的某些部分得到升级时,旧版的被替换部分将被弃用,但不会被移除,这样现有应用仍可使用它们。在极少数情况下,可能会修改或移除API的某些部分,但通常只有在为了确保API稳健性以及应用或系统安全性时,才需要进行此类更改。所有其他来自早期修订版的API部分都将结转,不做任何修改。

    四、“API等级”的更新会带来怎样的好处

    API等级的更新是谷歌公司针对系统安全以及易用性方面的改进。通过更新系统,可以增加一些功能,也可以修补一些漏洞,对于新增的功能,安卓会增加新功能的API接口,以供开发者运用到自己的应用中。比如安卓8.0以后新增的单摄虚化功能,这项功能也会提供相应的API接口,开发者可以把这项新功能加入到自己的应用中去。再比如,在安卓8.0的系统中,谷歌公司封堵了一些漏洞病毒,开发者就可以遵循新的框架API进行软件的适配,从而规避这些风险。

    ▲安卓8.0系统

    五、对《公约》中规定的理解

    API等级较低的应用,一是在权限管理方面存在用户可知而不可控的问题,二是存在可规避系统安全机制的漏洞,容易造成用户个人信息泄漏,引发大量终端安全和个人信息保护风险。《公约》中规定,自2019年5月1日起,新上架和预置应用应基于Android 8.0(API等级26)及以上开发。自2019年8月1日起,现有应用的更新应基于Android 8.0(API等级26)及以上开发。这样做就会保障用户的权益,大大减少用户隐私的泄漏风险,使得我们的手机更加安全。

    现在大家明白了API等级的概念以及《公约》的执行会给我们带来的好处,未来手机应用在安全性方面势必会得到提高。《公约》的执行对我们的来说是一件好事,但究竟能不能达到我们想要的效果,我们拭目以待。

    Android各版本代号/版本号/API级别

    代号

    版本号

    API/NDK级别

    发布时间

    -

    O

    8.0

    API level 26

    2017-3-21

    牛轧糖

    Nougat

    7.1.1

    API level 25

    2016-10

    7.0

    API level 24

    2016-08-22

    棉花糖

    Marshmallow

    6.0.1

    API level 23

    2015-12

    6

    2015-10-05

    棒棒糖

    Lollipop

    5.1.1

    API level 22

    2015-04-21

    5.1

    2015-03-09

    5.0.2

    API level 21

    2014-12-19

    5.0.1

    2014-12-02

    5

    2014-11-12

    奇巧

    KitKat

    4.4W.2

    API level 20

    2014-10-21

    4.4W.1

    2014-09-06

    4.4W

    2014-06-25

    4.4.4

    API level 19

    2014-06-19

    4.4.3

    2014-06-02

    4.4.2

    2013-12-09

    4.4.1

    2013-12-05

    4.4

    2013-10-31

    果冻豆

    Jelly Bean

    4.3.1

    API level 18

    2013-10-03

    4.3

    2013-07-24

    4.2.2

    API level 17

    2013-02-11

    4.2.1

    2012-11-27

    4.2

    2012-11-13

    4.1.2

    API level 16

    2012-10-09

    4.1.1

    2012-07-11

    4.1

    2012-07-09

    冰激凌三明治

    Ice Cream Sandwich

    4.0.4

    API level 15

    2012-03-29

    4.0.3

    2011-12-16

    4.0.2

    API level 14

    2011-11-28

    4.0.1

    2011-10-21

    4

    2011-10-18

    蜂巢

    Honeycomb

    3.2.6

    API level 13

    2012-02

    3.2.5

    2012-01

    3.2.4

    2011-12

    3.2.3

    -

    3.2.2

    -

    3.2.1

    -

    3.2

    2011-07-15

    3.1

    API level 12

    2011-05-10

    3

    API level 11

    2011-02-22

    姜饼

    Gingerbread

    2.3.7

    API level 10

    2011-09-21

    2.3.6

    2011-09-02

    2.3.5

    2011-07-25

    2.3.4

    2011-04-28

    2.3.3

    2011-02-09

    2.3.2

    API level 9

    2011-01

    2.3.1

    2010-12

    2.3

    2010-12-06

    冻酸奶

    Froyo

    2.2.3

    API level 8

    2011-11-21

    2.2.2

    2011-01-22

    2.2.1

    2011-01-18

    2.2

    2010-05-20

    泡芙

    Eclair

    2.1

    API level 7

    2010-01-12

    2.0.1

    API level 6

    2009-12-03

    2

    API level 5

    2009-10-26

    甜甜圈

    Donut

    1.6

    API level 4

    2009-09-15

    纸杯蛋糕

    Cupcake

    1.5

    API level 3

    2009-04-27

    -

    -

    1.1

    API level 2

    2009-02-09

    -

    -

    1

    API level 1

    2008-09-23

     
  • 相关阅读:
    科研:保持开放的心灵
    jquary实现轮播图(省略了css样式)
    Django实现注册/登录:方法2
    Django实现注册/登录:方法1
    卸载MySQL出现2503,2502解决方法
    安装MySQL出现2503,2502错误解决方法
    Markdown数学公式
    Linux安装Oracle11.2.0数据库
    Python列表生成式
    R语言apply()函数用法
  • 原文地址:https://www.cnblogs.com/it-tsz/p/10758568.html
Copyright © 2011-2022 走看看