Android应用运行时显示无关应用名称——多项目运行异常问题求助
解决Android Studio所有项目无法安装运行的问题
兄弟,我来帮你拆解下你遇到的这些问题,一步步来解决:
一、Logcat里出现无关应用grass.mary.newApp的日志?别慌,这是缓存搞的鬼
十有八九是Logcat的日志缓存或者过滤规则没设对,不是当前项目的问题:
- Android Studio的Logcat默认会存一段时间的系统日志,你之前运行过
newApp,旧日志还留在缓存里没清 - 你点Logcat面板右上角那个垃圾桶图标清空日志,然后重新跑当前项目,再看日志就会显示当前项目的进程了
- 另外记得把Logcat的进程过滤调成「只显示选中的应用」,别选其他选项,这样就不会混进别的应用日志了
二、核心问题:安装失败+布局Inflate异常
你说新建默认Hello World都跑不起来,还同时出两个关键错误:Installation did not succeed和ScrollView can host only one direct child,咱们先解决优先级更高的安装问题,再处理布局的事:
1. 先搞定安装失败的问题
Run标签页的Failed to create install session错误,我遇到过好多次,给你几个靠谱的解决办法:
- 清掉设备上的旧应用残留:打开手机设置→应用管理,把所有和你项目相关的应用(包括之前的
newApp)彻底卸载,连缓存带数据一起清干净 - 清理AS的构建缓存:点菜单栏
File → Invalidate Caches...,勾选Invalidate and Restart,重启AS后重新构建项目 - 检查手机存储空间:如果手机内存满了,也会导致安装会话创建失败,先清点空间再试
- 重启ADB服务:打开Terminal,输入
adb kill-server,再输入adb start-server,重启后重新跑项目 - 关掉Instant Run:AS的Instant Run有时候会抽风导致安装异常,点
File → Settings → Build, Execution, Deployment → Instant Run,把「Enable Instant Run to hot swap code/resource changes on deploy」的勾去掉
2. 关于布局Inflate异常
默认的Hello World布局里根本没有ScrollView啊!所以这个异常要么是旧日志没清干净,要么是你不小心改了AS的默认模板:
- 如果你新建项目用的是默认Empty Activity,打开
activity_main.xml看看布局,确认没有ScrollView嵌套多个直接子View的情况 - 如果模板真被改了,你可以试试重置模板:新建项目时选Empty Activity,下一步的时候如果有「Use legacy android.support libraries」就勾上,或者去
Settings→Appearance & Behavior→System Settings→Updates里检查更新,重新下载AS的模板资源
三、最后来个彻底的重置测试
做完上面的步骤后,按这个流程再测试一遍:
- 关掉Android Studio,删掉项目根目录下的
.gradle和build文件夹 - 打开AS,新建一个纯纯的Empty Activity项目,啥都别改
- 连设备(或者开模拟器),点Run按钮,看看Logcat和Run面板的输出
这样应该就能解决问题了,如果还是不行,你可以检查下AS版本和SDK版本是不是兼容,或者干脆更到最新的稳定版AS试试。
内容的提问来源于stack exchange,提问作者Mary Grass




