【Android学习】学习笔记(Bug类)

266 阅读3分钟

1. 【Android 系统已存在更高版本,无法安装

分析:出现这种情况主要是设备(所有使用Android系统的设备)上已经存在一个更高版本的App版本。 解决:删除掉设备上的App,就可以继续安装了。

2. 【fatal: could not read Username for 'gitlab域名': Device not configured】-【Device not configured

分析:主要是Git的信息配置问题 解决:image.png

3.【git提示Can't update(master has no tracked branch)】

分析:本地分支和远程分支没有关联,需要关联远程分支 解决方案:git push --set-upstream origin master 这样本地分支就和远程master分支关联了,解决了。目前AS会有提示去设置关联一个远程分支的操作。比命令行简单。

4.【找不到android.support.v4.view.NestedScrollingParent的类文件】

分析:安装SmartRefreshLayout的时候,报错 解决方案: 需要在gradle.properties中添加如下两行 image.png

5.【出现gitlab的部分版本在AS中无法刷新的问题】

解决方案:根据下面图示点击箭头更新后,如果还没有,就重启AS,然后仔细查看,有时候版本太多了,在下面,需要仔细的翻找或者直接搜索一下 image.png

5.【 only buildscript {} and other plugins {} script blocks are allowed before plugins {} blocks, no other statements are allowed

】 分析:在plugins{}块之前,只允许buildscript{}和其他插件{}脚本块,不允许其他语句 plugins{}必须放在buildscript{}之后或者其他的plugins{}的后边,报这个错误是因为plugins{}的位置放错了 结合实际情况结论:在配置下面的singin confige时候,创建了Extract Variable自动在Project工程目录的build.gradle文件中生成了下面ex{}代码导致,删除即可。 image.png image.png

6. 【桌面出现两个app应用图标,且两者完全指向同一个app】

image.png 分析:因为创建了两个.Main以及.LAUNCHER属性,去掉即可。

7.【textview出现重影】

image.png 实际上是因为该textview的字体设置body.具体引起的原因未发现,打印它的hashcode值也没有变化,改了字体就正常了。

可以重影的问题可以使用hashcode还是挺好使用的 image.png

8.【Unable to make field private final java.lang.String java.io.File.path accessible: module java.base does not "opens java.io" to unnamed module @3f3eda36

更新了android studio的版本,运行项目就报错了,主要是Java sdk不匹配的问题,需要在设置 ----> 搜索 Gradle---->选择jdk版本【看看兼容的是哪个低版本】---->点击Apply即可

image.png image.png

9.【Cause: superclass access check failed: class butterknife.compiler.ButterKnifeProcessor$RScanner (in unnamed module @0xa695335) cannot access class com.sun.tools.javac.tree.TreeScanner (in module jdk.compiler) because module jdk.compiler does not export com.sun.tools.javac.tree to unnamed module @0xa695335

参考csdn的解决方案settings--> Build,Execution,Deployment--->Build Tools--->Gradle里面选择,根据检索的网上问题,需要把Gradle JDK的java版本改成JDK 15,完美解决问题. image.png

9.Activity class {package/class} does not exist原因及解决方法

 小结一下,通常导致Activity class {[package](https://so.csdn.net/so/search?q=package&spm=1001.2101.3001.7020)/class} does not exist这类问题的主要原因在于:

1.build.gradle下defaultConfig中applicationId的值与包名不一致;

该情况下,可以省去不写,或保持与包名一致。

2.运行过两个包名一样的应用,导致无法识别入口activity;

卸载 当前包名的应用,或通过adb shell rm /data/app/*.apk  卸载所有apk(Android安装包)。