记一次 vivo x21 Android 8.1.1 调试Apk填坑
项目做版本适配
项目在功能方面接近尾声的时候,轮到了适配工作,首先要解决 Android版本适配问题,也就是在不同安卓版本的机型上要跑起来无障碍。经过 20 多部手机测试,发现只有 vivo x21手机安装不了,但是同样还有一台 Android 8.1的手机安装运行却无问题。于是开始填坑…
首先要解决的是权限
安卓开发者应该都知道,安卓 8.0 开始限制了“允许安装未知来源软件”的开关,在此之前是可以在手机的设置里面找到此入口,打开即可;当然,解决这个问题并不难,只需要在 AndroidManifest.xml 中添加下面这行代码即可:
<uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES" />
但是,即使如此,在 vivo x21手机上还是行不通……经过一番折腾,终于有了解决方案:
1.设置你的AS,关闭Instant Run。File->Settings->BUild,Execution…->Instant Run , 关闭勾选Enable Instant Run…
2.在你的gradle.properties文件添加一句:android.injected.testOnly = false
解释
其中第一个没啥说的,关于开发过程中是否开启 Instant Run,我个人建议还是关闭它,我在开发过程中一直都是关闭着的,因为之前开启它,出现了一些莫名其妙的问题,目前我们的神器 Android Studio 已经优化的很好了,即使重新打包,也浪费不了多少时间。
关于第二个之所以要在 gradle.properties 文件加这句
android.injected.testOnly = false
那是因为我们跑的 run apk都是 debug 版本,也就是测试版本,而 vivo x21就不支持这个测试apk(网上有人这样说,经过验证,不假,在找答案的过程中,看到过很多吐槽:vivo x21不适合做测试机,因为它只认正式包)
果然这样我的 apk 就顺利安装上了。但是,有时候你可能还会遇到一个问题,为什么这么说呢?
想想,上面的做法是把打好的包通过 QQ 或者其他第三方软件发到 vivo x21 手机上的,比如说:发到 QQ 了,这个时候如果你的 QQ 是不允许安装未知应用的,那就会同样出现无法安装的问题。
解决方式
根据每个手机不同,未知也不太一样,比如 vivo x21 是在:设置 -> 更多设置 -> 未知xx管理(记不太清楚了)。
一加3T前段时间更新了 Android 8.0 ,它的位置在: 设置 -> 应用程序 -> 特殊访问权限 -> 安装未知应用。如下图,打开对应的软件即可。
额外坑
经过爬坑,好不容易上来了,但是又一个坑来了,完美安装完毕,但是点击桌面图标,闪退,打不开软件,此时,我的内心真是奔溃的,无奈之下,将手机连接 AS 通过报错信息查看到是 xxx/libs xxx.so(非蓝色) 项目代码没有任何报错,还好,看到这个 Log,我心里已经不那么担心了,想了下,问题排查在 so 这块,因为这个项目使用到的 so 是在 2016 年加入的,那个时候 Android 8.0还没到来,第三方的 so 还没有适配,所以出现这个问题很正常,这样问题就好解决了,重新配置一遍 so 文件,果然顺利的跑起来了。
总结
- 对于高版本的特殊机型适配,需要会搜索和分析
- 对于项目使用到的第三方东西,要考虑版本兼容和适配
- 排查问题,定位问题,很锻炼自己解决问题的能力
记一次 vivo x21 Android 8.1.1 调试Apk填坑相关推荐
- Android底部导航栏切换页面填坑
** Android底部导航栏切换页面填坑 ** 这个效果的实现关键点就是给选项赋予两种状态,focused和normal,在主程序中用监听判断是否被选中,就给被选中的选项设focused为true, ...
- vivo+x21+android版本,vivo X21参数_vivo X21配置怎么样-太平洋IT百科
vivo X21配置怎么样?vivo X21硬件参数是大家比较关注的话题,vivo X21已经上市,这款产品可谓是vivo年度产品,相比上一代V20有着极大的全面升级,相信会成为今年下线爆款产品,那么 ...
- android 软件盘弹回去的最好体验,Android 软键盘弹出 日常填坑
开发输入框的开发者都会遇到一个问题,那就是在登录界面时,当你点击输入框时,下边的按钮有时会被输入框挡住,这个不利于用户的体验,所以很多人希望软键盘弹出时,也能把按钮挤上去.这样的交互更人性化,做得合理 ...
- android vivox21 适配,还在苦等Android P的适配?原来这些功能vivo X21早都有了
原标题:还在苦等Android P的适配?原来这些功能vivo X21早都有了 北京时间5月9日凌晨,谷歌在美国加利福尼亚州山景城召开2018年I/O开发者大会.本次大会带来了大家期待已久的Andro ...
- vivo android p 机型,vivo X21成全球首批Android P适配机型!vivo :不小心就秀实力了
原标题:vivo X21成全球首批Android P适配机型!vivo :不小心就秀实力了 近日,2018谷歌I/O大会正式召开,会上发布了大家期待已久的Android P开发者预览版,给我们展示了众 ...
- android studio找不到X21,不必苦等Android P,这些“新”功能其实早在vivo X21就已实现...
原标题:不必苦等Android P,这些"新"功能其实早在vivo X21就已实现 相信今天许多数码爱好者都被谷歌推出的全新系统Android P给刷屏了吧!没错,作为当今智能手机 ...
- vivox21 by Android,vivo X21率先升级安卓P,没升级的话这里有方法!
原标题:vivo X21率先升级安卓P,没升级的话这里有方法! 本次谷歌2018开发者大会在加州的山景城召开 ,千呼万唤的最新安卓系统Android P终于亮相,并同时推出了公共测试版.这次公测适配机 ...
- android x21,vivo X21成全球首批Android P适配机型!vivo :不小心就秀实力了
近日,2018谷歌I/O大会正式召开,会上发布了大家期待已久的Android P开发者预览版,给我们展示了众多全新特性,其中AI功能的进化让人十分眼馋,能够极大的提高日常生活的便利性.不过在以前,最新 ...
- vivo android 彩蛋,惊喜不止于表面!vivo X21的四个彩蛋,你注意到了吗?
原标题:惊喜不止于表面!vivo X21的四个彩蛋,你注意到了吗? 说起近期最热门的全面屏手机,肯定少不了vivo X21,vivo X21凭借全球领先的屏幕指纹黑科技.全面升级的系统配置.当下最流行 ...
最新文章
- 十二张图带你了解 Redis 的数据结构和对象系统
- 解决ubuntu系统中输入sudo passwd root,之后,提示输入新密码时,输不进去
- 怎样新建Oracle数据库
- XFire WebService demo
- 编程方法学笔记:karel
- boost::regex模块在 cpp 文件中搜索类定义,使用绑定成员函数回调测试程序
- canvas 文字颜色_canvas 中普通动效与粒子动效的实现
- Faster-RCNN 训练自己的数据
- linux 0.11 源码学习(十四)
- SAP MM T-Code
- 谷粒商城开发代码笔记记录
- linux中中文转换程序,Linux下在程序中如何进行繁体中文和简体中文的转换
- promise是什么?
- GF-3双极化SAR遥感影像预处理【基础版】
- layui 表格加载动画_巴州动画
- 计算机毕业设计Java医院管理系统(系统+源码+mysql数据库+Lw文档)
- caj文献里的参考文献拷贝到word中格式错乱问题
- MongoDB安装、群集原理
- 电脑无法打开Office提示很抱歉,此功能看似已中断解决办法
- Mac os 用MAMP搭建环境
热门文章
- 华为机试题:【中级】报文转换
- 计量广义差分操作过程_计量经济学总结
- 安装MinIO和使用MinIO Java SDK实现对文件的基本操作
- 开源的 Switch 模拟器——GitHub 热点速览 v.21.12
- 速卖通买家号怎么注册?
- 2012-2018普及组第一题题解
- 【C++错误】VS调试出现0xC00000FD:Stack overflow溢出
- RAD Studio 11.2 详细图文安装教程 (delphi 11.2)
- 零基础学习Python 作业 第28章
- 怎么在Word中插入几何画板图形