Android各系统版本的重要特性

Android4.4

android4.4又称Android K(Kitkat)

1.webview的变化

4.4版本以后对http与https进行了安全认证的区分,4.4以后默认不支持https这种方式,但是提供了三种向下兼容的模式:

MIXED_CONTENT_NEVER_ALLOW:Webview不允许一个安全的站点(https)去加载非安全的站点内容(http),比如,https网页内容的图片是http链接。强烈建议App使用这种模式,因为这样更安全

MIXED_CONTENT_ALWAYS_ALLOW:在这种模式下,WebView是可以在一个安全的站点(Https)里加载非安全的站点内容(Http),这是WebView最不安全的操作模式,尽可能地不要使用这种模式

MIXED_CONTENT_COMPATIBILITY_MODE:在这种模式下,当涉及到混合式内容时,WebView会尝试去兼容最新Web浏览器的风格。一些不安全的内容(Http)能被加载到一个安全的站点上(Https),而其他类型的内容将会被阻塞。这些内容的类型是被允许加载还是被阻塞可能会随着版本的不同而改变,并没有明确的定义。这种模式主要用于在App里面不能控制内容的渲染,但是又希望在一个安全的环境下运行。

if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP){

    settings.setMixedContentMode(WebSettings.MIXED_CONTENT_ALWAYS_ALLOW);

4.4以后webview默认不保存cookie状态

如果要设置在4.4以后进行cookie保存,可以这样设置

if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP){

    //android5.0以后webview默认不在保存cookie所以会导致第三方登录状态无法保存

    CookieManager cookieManager = CookieManager.getInstance();

    cookieManager.setAcceptThirdPartyCookies(webView,true);

}


Android5.0

android5.0又称Android L(Lollipop)

1.安装时控制权限

用户可以在安装时关闭某些静态注册的权限。

2.用户体验优化

引入Material Design设计,开始采用扁平化设计,会拥有类似物理表面和边缘的视觉效果,动态阴影和动画方面的加强。

3.增加供开发者使用的官方控件

引入抽屉布局(DrawerLayout)、RecyclerView、CardView、SwipeRefreshLayout、ToolBar、drawerToggle等,开始能够自定义状态栏、标题栏、导航栏的颜色,设置控件阴影。

4.增加触摸反馈

当用户与用户界面进行交互时,触摸反馈在触摸点上提供了一种瞬时视觉确认,按钮的默认触摸反馈动画使用新的RippleDrawable类。

5.增加activity的转场动画

Android6.0

Android6.0又称Android M(Marshmallow)

1.完整的权限控制

危险的权限都需要向系统动态申请,只静态注册申请权限会无效化。对于一些隐私权限会在第一时间提示用户是否授权。

新增API

ContextCompact.checkSelfPermission() 检测是否拥有权限

ActivityCompact.requestPermission() 申请授权

onRequestPermissionsResult() 用户是否授权

ActivityCompat.shouldShowRequestPermissionRationale() 权限解释(用户拒绝后出现)

Android7.0

android7.0又称android N(Nougat)

1.后台优化

删除了三项隐式广播(CONNECTIVITY_ACTION、ACTION_NEW_PICTURE 和ACTION_NEW_VIDEO),优化内存使用和电量消耗。

Android8.0

Android8.0又称Android O(oreo)

1.PinnedShortcuts功能

类似苹果的3DTouch,长按一个软件后可以弹出子菜单,然后就可以通过这个方式快捷的使用该应用的部分功能。

2.自适应图标支持多种形状

能在不同的设备型号上显示不同的图标形状。比如同一个桌面图标在一家 OEM 厂商的设备上显示为圆形,在另一家则可以显示为方形。通过定义两张图层(前景与背景)你可以制定你的桌面图标外观,你必须提供没有形状、阴影的 PNG 格式图象作为图层 Drawable。

3.通知渠道 — Notification Channels

通知渠道是由应用自行定义的通知内容类别,借助渠道,开发者可以让用户对不同种类的通知进行精细控制。

4.后台限制

对隐式广播、后台服务和位置更新等进行了后台自动限制

Android9.0

Android9.0又称Android P(pie)

1.对全面屏的支持

模仿了ios提高屏占比的方案(前摄像头没有比较好的隐藏方案),即支持齐刘海。借助最新的提供的DisplayCutout类,开发者可以找到非功能区域的位置和形状,而非功能区域是不应显示功能的;使用getDisplayCutout()就可以获取这个区域的详细信息。

2.通知栏(状态栏)

现在只允许显示最多4个通知图标,不管当前设备是否是齐刘海,多出来的通知显示为三个点。Android P版本中,你还可以在消息中展示图像;新的Notification.Person类可以识别对话中的任务,包括他们的头像和URI。

3.多摄像头画面

可以即时获取到两个或者更多的相机数据流。

4.神经网络

任务可以声明它们估算的数据大小,信号预读取并且指定详细的网络需求。即根据任务需求的数据大小和当前的网络环境,在收费网络里延迟一些网络要求,而在不计费的网络里可以通过消息预获取来得到更好的用户体验。

5.Material Design迎来2.0时代

加入了大量的圆角设计,UI方面的优化。

6.Android Dashboard

用户可以看清楚自己在受手机上都干了哪些事情,从而提醒自己是否过多的浪费了不必要的时间,并在必要的时候提醒你应当休息一下。对某一款应用进行时间限制,用户使用到一定时间之后就会提醒,甚至让图标变灰色,以提醒用户尽量少用这个APP。

7.Wind Down模式

全局的夜间模式(个人感觉这个好人性化)

8.Adaptive Battery模式

一个电池优化模式,提高续航。在该模式下,程序不需要唤醒可以极大的降低资源占用,更关注用户最常用的服务和应用程序。

9.Shush模式

在这个模式下,如果用户将手机屏幕朝下放置,那么手机会自动调整为震动或者静音模式,只保留闹钟的声音。

10.检测用户的行为,让系统作出对应的动作

如插入耳机孔自动播放音乐,搜索“打车”自动显示打车软件等。

总结:主打对大屏幕和视觉体验的优化,对电池电量的优化,开始智能化,会对用户行为的学习及正确化引导,网络环境的智能适应,更加人性化。

你可能感兴趣的:(Android各系统版本的重要特性)