前言
这一篇文章用来记录平时在开发中遇到的除gradle
外的其他问题,一是加强记忆,二来也方便后续再次遇到同类问题方便查找。
问题列表
问题描述(Error while Launching activity)
在开发过程中连接着手机联调的时候,程序已经安装在手机上,这时候因为一些原因把APP卸载了,再次点击Run
重新运行程序,安装app,出现了下面的错误
1 | Error: Activity class {com.hencoder.hencoderpracticedraw7/com.hencoder.hencoderpracticedraw7.MainActivity} does not exist. |
提示说启动界面时出错了,再往上一行说启动页(这里是MainActivity)不存在。出现这个问题的原因应该是,AS认为装载的app还存在,启动页却找不到了。但是实际上我们已经卸载了。
解决办法
在AS底部的工具栏中找到Terminal
,打开,输入以下命令
adb uninstall 你的包名
我这里的包名是com.hencoder.hencoderpracticedraw7
,所以就这样写:
adb uninstall com.hencoder.hencoderpracticedraw7
然后回车,出现Success
字样
用adb的方式把app完全卸载掉,再次运行APP就可以了。
打开AS出现以下提示(non-Gradle…Android-Gradle)
1 | Compilation is not supported for following modules: xxx. Unfortunately you |
翻译过来就是,在一个项目中不能有非渐变Java模块和Android渐变模块。具体什么是非渐变和渐变,我也不清楚[捂脸],后续查到再补充
解决办法
我遇到这个问题的原因是,在项目提交的时候,把一个lib
的iml
文件删除了,之后再运行自动生成了两个iml
并且和之前的也不相同。比如我项目中的lib
名称是image
,一般对应生成的iml
文件就是image.iml
,但是我删除之后生成的却是两个,并同时报出了上面的错误。
然后搜了一下找到了解决办法:
- 关闭当前项目
- 关闭
Android Studio
- 找到项目位置,删除项目中的
.idea
文件 - 删除项目中所有的
.iml
文件(每个lib下iml都要删,包括app中的) - 重新打开
Android Studio
收工
“Default activity not found”
在我们运行项目的时候,有时候会遇到这个问题:
app
上有一个小红叉,点击run app
,又会出现下面的错误
解决办法
方法一:
确认在app文件夹下的AndroidManifest.xml
文件中已经添加如下代码
1 | <activity |
如果添加以后还是不行,那看方法二
方法二:
点击工具栏的同步按钮
同步以后,还是不行的话,就接着往下看
方法三:
在Android Studio
中选择
File -> Invalidate Caches / Restart...
之后在弹出的提示框上选择Invalidate and Restart
按钮
方法四:
最后选择在Android Studio
中选择
Build -> Clean Project
以上四种方法都执行了,这个问题应该就解决。