Android升级API的那些坑

本文分享了Android从API22升级到API28过程中遇到的挑战,包括Android9.0 Pie的http请求限制、Android8.0 Oreo的全屏活动定向问题、Android7.0 Nougat的FileUriExposedException错误以及Android6.0 Marshmallow的Apache HTTP客户端移除和运行时权限管理。针对这些问题提供了相应的解决方案。
摘要由CSDN通过智能技术生成

前言:

简直了!我的项目是从API22一路高歌直升28。这一路坑坑洼洼,一步一个坑呀!真是不想面对呀。但是。作为一个Android开发,有幸走过这样的路还是很值得庆幸的。毕竟不是每个人都有这样的机会。那我们开始吧!

正文:

一、Android9.0 API 28 – Pie(红豆派)

原因:由于Android9.0不允许http网络请求,导致我们的zip无法下载。
方案:在清单文件中加入android:usesCleartextTraffic="true"允许http请求

二、Android8.0 API 26 – Oreo(奥利奥)

一、报错:Only fullscreen activities can request orientation
原因:在安卓8.0版本时为了支持全面屏,增加了一个限制:如果是透明的Activity,则不能固定它的方一向,因为它的方向其实是依赖其父Activity的(因为透明)。然而这个bug只有在8.0中有,8.1中已经修复。具体crash有两种:

1.Activity的风格为透明,在manifest文件中指定了一个方向,则在onCreate中crash
2.Activity的风格为透明,如果调用setRequestedOrientation方法固定方向,则crash

方案1:静态在透明的Activity中不设置横竖屏 及在清单中不设置a

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值