最近上华为游戏中心,发现最低targetSdkVersion要为26,但自己项目的targetSdkVersion为19,为了能上架需要把项目升级,这里记录一下升级的过程。
1. 把AndroidManifest.xml中的targetSdkVersion 修改为26,然后把项目设置中->android->project build target设置为Android 8.0.0。
2 项目升级会造成一些安卓API的丢失,例如Apache HttpClient等 这些在API 23中就被Google移除了,你可以舍弃或者导入新的jar包。
3. 修复完项目中的API错误,我们就可以来解决下一个问题了,SdkVersion到23的时候使用了动态权限机制,如果在AndroidManifest.xml中申请了敏感权限需要向用户申请授权,否则直接使用则可能会造成应用闪退。具体如何动态申请授权的方式,网上有很多,大家可以自行百度,这里说一个比较坑的地方是这些申请授权的API都是23以上的android-support-v4.jar中,但是ADT的版本貌似最高也只能到22,所以我们得去网上找能支持申请授权API的高本版安卓支持库,找到新的android-support-v4之后我们可以选择直接把jar包拷贝到项目的libs中添加依赖,(注意如果libs如果含有比android-support-v4更高版本的support 例如android-support-v7,请务必删除,否则高版本的会覆盖低版本,造成API找不到的情况)