初次Android 6.0升级Android 8.0的心酸总结

前置条件
1.需要先确定你要升级的Android版本(这里我是从6.0升级到8.0,也就是compileSdkVersion从23升级到26),无论是升级到什么版本,你的AS都至少需要升级到3.0以上的版本才会支持。
2.确定你的Android版本后,就要确定对应的Gradle版本(Gradle的版本需要注意Android Gradle Plugin Version和Gradle Version 的对应关系,详情可以查看 https://www.cnblogs.com/diyishijian/articles/7751407.html)
在这里插入图片描述
3.常规的SDK配置,这里就不做描述了。(由于版本升级,只要找到对应的高版本的SDK即可,可查看 https://blog.csdn.net/zcmain/article/details/94772865)在这里插入图片描述

(题外话)4.可能签SDK需要修改包名,操作可查看 https://blog.csdn.net/u011486491/article/details/55049805

操作步骤
0.将AS显示项目类型修改成Android,方便查找后续修改的文件
在这里插入图片描述
1.修改Manifest.xml文件,将 targetSdkVersion屏蔽
在这里插入图片描述
修改为
在这里插入图片描述

2.修改Gradle Scripts中的build.gradle,(这里有两个build文件,选择项目的),根据前置条件2和3中的图片查看版本,进行修改;(这个需要修改的数值对应两张图片分别是:Gradle的插件版本,和Plugin Version)在这里插入图片描述
下一步,点击File→Settings,在打开的窗口中选择,Build,Execution,Deployment选项,选择里面的Gradle,修改Gradle user home的路径,(这个文件是我再网上下载下来的, https://services.gradle.org/distributions/)
在这里插入图片描述
修改完成后记得点击
在这里插入图片描述

3.修改Gradle Scripts中的build.gradle(这次是app中的),在这里插入图片描述
根据下图,可以看到在Android studio3.0中,compile依赖关系已被弃用,被implementation和api替代,provided被compile only替代,apk被runtime only替代。
在这里插入图片描述

详细可以查看https://www.jianshu.com/p/f34c179bc9d0。

4.如果Build中没有显示Generate Signed Bundle/APK这个选项,
在这里插入图片描述
先去File→选择Sync Project with Gradle Files,然后等待编译完成即可显示。
在这里插入图片描述

5.按照原来的操作步骤,点击Generate Signed Bundle/APK,即可打出升级版本后的包。

*6.由于Android 8.0版本升级后,关于获取权限的机制有所修改,在打完的安装包无法打开的情况下,第一个需要解决就是Android请求外部储存SD卡读写权限的问题,可以查看 https://blog.csdn.net/c529283955/article/details/104266083,进行修改。(当前没有做权限获取,所以在Manifest.xml中添加了在这里插入图片描述
用于屏蔽获取Android权限的弹窗,其他包括网络通讯、通知栏等权限的修改参照:
https://www.cnblogs.com/candyzhmm/p/11242938.html
和 https://blog.csdn.net/qq_38306233/article/details/83785911
或 https://www.jianshu.com/p/a8fd3d1fa0a3进行修改)

7.动态获取权限可以参考https://www.cnblogs.com/Free-Thinker/p/6047968.html这篇文章。

*7.1.如果在使用ActivityCompat时,一直报错,记得在上面添加
import android.support.v4.app.ActivityCompat;

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值