最新消息: USBMI致力于为网友们分享Windows、安卓、IOS等主流手机系统相关的资讯以及评测、同时提供相关教程、应用、软件下载等服务。

Android编程常见问题及解决(持续更新)

IT圈 admin 35浏览 0评论

2023年12月11日发(作者:邛高远)

Android编程常见问题及解决(持续更新)

Android涉及软硬件,因此相关的坑很多,以前每次都解决了就算了,现准备将这些错误记录下,以便以后查阅。这里只列出我自己的情

况。

如果看这篇blog的人觉得有哪些地方需要完善,欢迎指正。

我会对每个错误标明自己用的配置。

2. 透明Activity崩溃

配置:Window10,AS 3.1.3, buildToolsVersion:28.0.1, compileSdkVersion 28,手机:Nexus6P Android7.1.2(API25)

错误:

eException: Unable to start activity ComponentInfo{eapre2/

at mLaunchActivity(:2666)

at LaunchActivity(:2727)

at tyThread.-wrap12()

at tyThread$Message(:1478)

at chMessage(:102)

at (:154)

at (:6121)

at (Native Method)

at Init$(:889)

at (:779)

Caused by: lStateException: You need to use a pat theme (or descendant) with this activity.

at SubDecor(:555)

at SubDecor(:518)

at tentView(:466)

at tentView(:140)

at te(:19)

at mCreate(:6682)

at tivityOnCreate(:1118)

at mLaunchActivity(:2619)

at LaunchActivity(:2727)

at tyThread.-wrap12()

at tyThread$Message(:1478)

at chMessage(:102)

at (:154)

at (:6121)

at (Native Method)

at Init$(:889)

at (:779)

解决:透明Activity要继承Activity类

3. Unable to resolve dependency for ':app@debug/compileClasspath': Could not

download xxx

配置:Window10,AS 3.1.3, buildToolsVersion:28.0.1, compileSdkVersion 28

解决:

(1)

(2)

(3) fan qiang(亲猜最有效)

参考:

(4) 若以上三种都不行,很可能该依赖库不存在(见15),换成低版本的API

4. Ubuntu下adb devices:no permissions 问题

配置:Ubuntu16.04

解决:

5. No toolchains found in the NDK toolchains folder for ABI with prefix: mips64el-

linux-android

配置:Ubuntu16.03,AS3.1.3

解决:

最后只要在toolchains目录下执行ln -sf aarch64-linux-android-4.9 mips64el-linux-android即可,见评论2。

6. Manifest merger failed : Attribute application@appComponentFactory value=

(mponentFactory) from

[t:support-compat:28.0.0] :22:18-91

配置:Window10,AS3.1.3,Build Tools:28.0.1

前提:添加Dexter6.0.1依赖库(implementation ':dexter:6.0.1')后 build时报错

原因:AndroidX和Android Support库共存问题

解决:

(1) 法一:根据提示在中添加代码

android:appComponentFactory=""

tools:replace="android:appComponentFactory"

参考:

(2) 法二:参考:还没看

7. Error:Execution failed for task

‘:app:transformDexArchiveWithExternalLibsDexMergerForDebug’.

》hiveMergerException: Unable to merge dex。。

配置:Window10,AS3.1.3,Build Tools:28.0.1

前提:添加Dexter6.0.1依赖库(implementation ':dexter:6.0.1')后 build时报错

原因:包引用重复

解决:

(1) 法一:在module的的defaultConfig添加 "multiDexEnabled true"

参考:

补充:同时对multiDexEnabled的解释,粗略看了下这文章

好像不错,日后再读。总的说multiDexEnabled就是分Dex,因为ART之前Dex文件对方法索引用short类型存储,导

致最大方法数是65536,因此当项目足够大包含方法数(包括引用的外部Lib里的所有方法)超过65536,就会报

错。

(2) 法二:在module的的dependencies里把 implementation 't:appcompat-v7:28.0.0' 注释掉

参考:

补充:我用控制变量法,发现是添加了Dexter依赖的问题,但要用该库,所以注释了 implementation

't:appcompat-v7:28.0.0'。

8. Execution failed for task ':app:transformResourcesWithMergeJavaResForDebug'.

> More than one file was found with OS independent path 'META-

INF/_n'

配置:Window10,AS3.1.3,Build Tools:28.0.1

前提:按照7中的法一解决问题后,出现该问题。

原因:AndroidX和Android Support库不能共存

解决:6,7,8三个是连在一起的,我用了6的法一,7的法一,到这里build没问题,但Run app就有问题,说明还是没解决AndroidX和

Android Support问题,这两个概念之后要仔细整理下。

先解决问题,我首先根据网上多数说的方法,在(Module:app)中添加如下代码

packagingOptions {

exclude 'META-INF/_n'

}

但Run app时又出现了相似问题,只是路径不同而已。那这看来不是正确解决方法。参照,正确解决方法是回退依赖库,看了下

Dexter6.0.1源码的

确实导入了androidx依赖,那就回退到5.0.0版本,解决问题。

9. 将assets中资源作为File对象失败

前提:想将assets中资源作为File对象进行本地读取

原因:assets是在apk中的,无法实现

解决:如要读取assets资源,使用AssetManager

参考:

10. Caused by: lStateException: This Activity already has an action

bar supplied by the window decor. Do not request

E_SUPPORT_ACTION_BAR and set windowActionBar to false in

your theme to use a Toolbar instead.

前提:使用Material Design的ToolBar

解决:使用自定义style,去掉actionbar

参考:

11. AS突然不显示Logcat日志

前提:AS3.1.3,小米9(Android9)

解决:

(1) 重启

12. AS查找运行时问题步骤

前提:AS3.1.3,Win10

解决:根据以下顺序

(1) 查看Run;

(2) 查看Logcat

(3) Debug;

(4) 打log;

13. AS引入javax包(包括ImageIO等类)

前提:AS3.1.3,Win10

解决:

(1) 找到AS中路径;

(2) 在当前Module的中添加

compile files ('path/to/')

参考:

14. sfiedLinkError: No implementation found for long

.n_Mat() (tried Java_org_opencv_core_Mat_n_1Mat and

Java_org_opencv_core_Mat_n_1Mat__)

前提:AS3.1.3,Win10

解决:添加对so的依赖

参考: 第三、四步

15. ERROR: Unable to resolve dependency for ':app@debug/compileClasspath':

Could not find any version that matches t:appcompat-v7:30.+.

(待完善)

前提:AS3.1.3,Win10,new project时sync报错

原因:androidx和android support关系

解决:

(1) 将

implementation 't:appcompat-v7:30.+'替换为

implementation 'pat:appcompat:1.1.0'

参考:

16. Android App闪退(待完善)

解决:

(1) 检查View和资源id类型是否匹配(出现过ImageView和TextView的id进行findViewById导致的情况);

17. Error:Server returned HTTP response code: 403 for URL:

/distributions/

前提:AS3.1.3,Win10

原因:http协议不行

解决:

在ties中改成https

18. AS导入jar

前提:AS3.5,Win10

参考:

19. 警告:API 'aCompile()' is obsolete and has been replaced with

'aCompileProvider()'

待解决20. git clone报错“fatal: unable to access

'/wkxjc/CustomViewDemo/': SSL certificateproblem: unable to get

local issuer certificate”

前提:git 2.28.0,Win10

解决:命令行上运行 git config --global ify false 将安全验证关掉

参考:

21. 修改模块名

前提:AS4.0.1,Win10

解决:

(1) 右键module->Refactor->rename module and directory;

(2) 在中include ‘’刚改过的名字。

22. geBitmap无法显示

前提:AS4.0.1,Win10

解决:

(1) 把targetSdkVersion注释;(验证)

参考:

(2)修改Bitmap的显示比例;(未验证)

23. Android历史版本下载

url:

24. ERROR: This version of Android Studio cannot open this project, please retry

with Android Studio 4.0

前提:AS4.0.1,Win10

解决:将project的中如下改为自己as对应版本(我的是as3.5.3)

25. ERROR: Cause: unable to find valid certification path to requested target

前提:AS3.4,Win10

解决:在setting中开proxy

26. Error:android sfiedLinkError: No implementation found for long

.n_Mat

前提:AS3.1.3,Win10

原因:没有加载openCV4Android的库

解决:

在Activity中添加如下代码,并调用opencv4Loader():

private BaseLoaderCallback mLoaderCallback=new BaseLoaderCallback(this) {

@Override

public void onManagerConnected(int status){

switch (status) {

case S: {

Log.d("waterMark1", "OpenCV loaded successfully");

}

break;

default: {

gerConnected(status);

}

break;

}

}

};

private void opencv4Loader(){

if(!bug()){

Log.d("waterMark1", "Internal OpenCV library not found. Using OpenCV Manager for initialization");

ync(_VERSION_3_0_0, this, mLoaderCallback);

}else{

Log.d("waterMark1","OpenCV library found inside package. Using it!");

gerConnected(S);

}

}

参考:

27. 点“Attach Debugger to Android Process”出现debug info can be unavailable.

Please close other application using ADB: Monitor, DDMS, Eclipse错误

前提:AS3.1.3,Win10

解决:

(1) adb usb;

参考:

28. 华为EMUI手动装apk包时出现“无效安装包 与操作系统不兼容”错误

前提:AS4.0.1,Win10,EMUI Android 9

错误:第一次手动安装apk-debug正常,第二次手动安装改后的apk-debug时出现

原因:参考

EMUI改了Android的debug签名验证机制,如果用

生成,会导致EMUI无法解析。

解决:参考:

按一按下步骤

(1) Clean Project

(2) 用

build

29. 多线程调试时“Paused in another thread“

前提:AS4.0.1,Win10

解决:进入报错的函数内部继续调试定位问题

30. AS的(project)和ties对应列表

前提:Win10

列表:

AS

3.1.3

4.0.1

(project)

3.1.3

4.0.1

ties

4.4.1

6.1.131. lStateException: Cannot call this method while RecyclerView is

computing a layout or scrolling

Todo

32. Could not reset the state on your devices

前提:问题

解决:

(1) 重启app;

(2) 重启AS;

(3) 重启手机;

33. The layout "load_layout1" in layout has no declaration in the base layout folder;

this can lead to crashes when the resource is queried in a configuration that does

not match this qualifier

前提:在layout中添加新布局后,在布局中报错

解决:File => Invalidate Caches / Restart => Invalidate and Restart.

参考:

34. Unsupported Modules Detected: Compilation is not supported for following

modules:xx. Unfortunately you can't have non-Gradle Java modules and Android-

Gradle modules in one project.

前提:从网上down一个demo,在Build时报错

解决:删除.idea文件-》重新sync

这里.idea如下

参考:

35. 在AS无法导入库

前提:alt+enter指定类无法import

解决:重启AS

36. Dependent features configured but no package ID was set.

前提:在app module A依赖app module B(在A的中添加了implementation project(":A"))后在build时报错

原因:app module只能依赖library module

解决:将app module B改为library module,按以下步骤

(1) 把B的顶部改成 apply plugin: 'ation' ;

(2) 删除B的中android block中的applicationId行。

参考:

37. kOnMainThreadException

前提:在onCreate中用

InetAddress ip2=ame("");

原因:在>=android3.0后,在主线程进行网络操作会抛此exception。

解决:把网络操作放子线程。

38. no suspicious code found

前提:使用lint扫描全局时报错解决:

(1) 法一:重启as再扫描

38. INSTALL_FAILED_VERSION_DOWNGRADE

前提:用adb install时报错,当前手机已有旧commit的apk,要装新commit的apk

解决:adb install -r -d “apk名“

参考:

39. 使用lint查找无引用资源时的问题

前提:用as的lint查找”unused resources“时有bug

问题:

(1) 查找出的无引用资源中有的资源是有引用的,需手动复查;

(2) 用”remove declarations for xx“删除无引用资源会删除非预期资源,需用commit复查;

40. 切换到别的commit时直接build报错(存在xxGradle版本不支持的特性)

解决:切换到别的commit后先sync再build

41. layout inspector无法显示布局(nothing to show)

解决:

(1) 重启app;

(2) 开发者选项-USB调试 重开;

(2) 重启手机;

(3) 重启AS;

42. AS无法显示整个界面

前提:突然无法显示整个界面,但底部图标能点击

解决:删除AS配置文件(C:Users用户.AndroidStudioxx)-》重启AS

43. 打开较大hprof导致AS ANR

解决:修改AS的堆内存大小

参考:

44. AS debug/用layout inspector 时显示“no debuggable processes”

解决:

(1) 关闭整个AS进程并重启;

(2) 拔掉线重连手机;

45. 用LeakCanary抓到leak时报错Heap analysis

failed(NullPointerException)

前提:

LeakCanary的Heap Dumps中stacktrace如下

NullPointerException

at eakReferenceMirror$stance(:34)

at eakReferenceFinder$findKeyedWeakReferences$1$addedToContext$(:49)

at eakReferenceFinder$findKeyedWeakReferences$1$addedToContext$(:10)

at ormingSequence$iterator$(:172)

at ingSequence$iterator$xt(:132)

at ingSequence$iterator$t(:156)

at cesKt___ection(_:722)

at cesKt___bleList(_:752)

at cesKt___(_:743)

at eakReferenceFinder$findKeyedWeakReferences$(:54)

at eakReferenceFinder$findKeyedWeakReferences$(

:10)

at ut(:23)

at yedWeakReferences$shark(:35)

at akingObjectIds(:13)

at eGraph(:160)

at e(:99)

at eHeap(:83)

at leIntentInForeground(:60)

at leIntent(:55)

at Service$Message(:78)

at chMessage(:107)

at (:238)

at (:67)

_INT: 29

CTURER: OPPO

LeakCanary version: 2.5

Analysis duration: 1540 ms

hprof:见

解决:Todo

参考:

46. Unknown HPROF Version (JAVA PROFILE 1.0.3) (ption)

前提:将leakcanary获取的hprof放入MAT报错

原因:The hprof file you get from Android has android specific format. You should convert hprof file take from Android OS

into standard hprof format.

解决:

For this you can use hprof-conv tool that is located at AndroidSDK/tools/hprof-conv.

For example:

hprof-conv

参考:

47. ption: Could not delete lib xx

前提:想删除一个external library的jar,报错

解决:在项目根目录运行 gradlew clean清gradle缓存-》重新删

参考:48. Build Failed:Duplicate class xx found in modules (xx) and (xx)

前提:项目中通过如下方式

(1) project的中添加库;

(2) project的中buildscript的dependencies中加插件 class 'xx';

(3) module的中android闭包之后引入插件 apply plugin:‘xx’;

引入另个依赖库并sync后,在Run时报Build failed,duplicate class 。。。

原因:引入的依赖库存在和已有库重复的类

解决:在project的中添加如下配置去除重复依赖

49. Warning:debug info can be unavailable. Please close other application using

ADB:Monitor, DDMS, Eclipse

前提:Win10,AS4.0.1,打开过android device monitor,报了adb端口冲突 -》 关闭android device monitor,点debug报错

解决:

(1) 输入 adb usb;

(2) 重启电脑(关闭后台adb应用);

注:AS通过环境变量调用adb

50. make aar时报错

前提:make aar时报下错

解决:换个好代理

51. Cause: :443 failed to respond

前提:sync时报错

解决:

在proxy setting中check下是否连通:

若不能通说明代理问题;

52. no launcher activity found

解决:

(1)查看activity是否在manifest中有category设launcher;

(2) 重建app module,copy;

53. AS Build时报错出现乱码

解决:

(1) Help-》Edit Custom VM Options:添加 -ng=UTF-8

(2) Invalidate Caches/Restart

54. dRuntimeException: Calling startActivity() from outside of an

Activity context requires the FLAG_ACTIVITY_NEW_TASK flag. Is this really what

you want?

前提:在service用startactivity跳activity报错

解决:code中加

参考:

55. AS布局预览不显示

解决:

(1) design界面force refresh layout

参考:

56. AS引入material design

参考:

57. 查找手机上指定安装包

解决:adb shell-》pm list packages | grep "keyword"

58. Unable to resolve dependency for 'xx module@debug/compileClasspath': Could

not resolve project: xx module

前提:使用as辅助的为某个module添加依赖module后,sync报如下错

解决:todo

59. AS显示

解决:在手机 设置-》开发者选项 中把“日志记录器缓冲器大小”设大点或关闭

参考:

60. AS在启动时进入debug模式闪退

前提:在主线程中

解决:去掉断点(原因待纠)

参考:

下断点闪退

61. AS用layout inspector时app闪退

前提:AS4.0.1

解决:

按以下步骤依次尝试:

(1) adb kill-server-》adb start-server;

(2) 重启app;

(3) 重启AS;

(4) 重启手机;

62. AS中Gradle Build时报错:请求的操作无法在使用用户映射区域打开的文件上

解决:

(1) 重启AS

63. AS调试时断点不可用(No executable code found)解决方案

解决:

(1) clean project;

(2) 重新build安装;

(3) 启动app debug;

参考:

特例:

(1)

64. SSL peer shut down incorrectly

解决:

(1) 开代理;

参考:

65. no such instance field/no such static field

前提:debugger时变量显示如上

解决:关混淆(具体buildType设minifyEnabled false)

参考:

66. Android断点调试时闪退

前提:AS4.0.1

解决:

(1) adb kill-server -》 adb start-server;

(2) 重启app;

(3) 重启手机;

(4) 重启Android Studio;

(5) 重启电脑;

67. Android Studio无法新建module

前提:AS4.0.1右键项目名new无module选项

解决:Invalidate and Restart68. 修改代码后build project运行时修改未生效

解决:

(1) clean project;

(2) build project;

69. WebView相关

(1) 加载“”时WebView显示“net:ERR_CLEARTEXT_NOT_PERMITTED”

原因:从Android 9.0(API级别28)开始,默认情况下禁用明文支持。因此http的url均无法在webview中加载

解决:

【1】 在中的application标签加“android:usesCleartextTraffic="true";

【2】 使用https;

参考:

(2)WebView显示“net:err_cache_miss”

解决:文件中加入联网的权限

参考:

70. RecyclerView相关

(1) 调notifyDataSetChanged()未进入onCreateViewHolder,onBindViewHolder,

getItemCount

可能原因:

(1) 未写outManager();

72. 初次编译kotlin报错

前提:用AS或IDEA初次编译kotlin报错

解决:修改heap size

73. Failed to create voice “adc“

前提:启动AS自带模拟器时报错

解决:

(1) 插上耳机;

74. code is missing

前提:adb install时报错

解决:

(1) 重新build;

(2) clean project -》 重新build;

75. 请求的操作无法在使用用户映射区域打开的文件上执行

前提:

解决:

(1) 重新sync;

76. 对无法找到xx相关的总结

(1) no usages found in All Places/cannot resolve symbol xx/cannot find declaration to go to

前提:在AS中添加xx(多为资源),但马上引用时报错

解决:

【1】 检查是否拼写错误

【2】 重启AS;

(2) cannot resolve symbol R

配置:Window10,AS 3.1.3, buildToolsVersion:28.0.1, compileSdkVersion 28,手机:Nexus6P Android7.1.2(API25)

情况:有两种:存在和不存在,我目前只遇到不存在。不存在解决:

(1) 法一:Clean Project -> Rebuild Project

(2) 法二: 重启AS

(3) 法三: New一个Project,copy原来的

参考:

(1)

(2)(手动生成,日后学习下)

(3) ndException:xx

前提:存在xx,但运行时报exception

解决:

【1】 clean project-》build project;

77. 用AS进行commit时漏掉文件

前提:AS4.0.1,文件之前add了,但commit时未显示

解决:用AS进行commit前命令行 add .

78. adb install时显示failed to install

前提:adb devices正常 且 adb install显示failed to install apk

解决:

(1) 卸载原有apk-》adb install

参考:

79. findViewById报错nullpointerexception

前提:layout中有改id,但findviewbyid报错

解决:

(1) 换个module

80. Android studio 远程主机强迫关闭了一个现有的连接

前提:as arctic fox2020.3.1,点击run时报错

解决:(1) invalidate cache and restart

81. Android studio 在Gradle中无构建任务

前提:as arctic fox2020.3.1在

中没显示Tasks列表

解决:

去掉的钩然后sync

82. Android studio 报错“Type xxx is defined multiple times:。。。。”

前提:as arctic fox2020.3.1

解决:

(1) clean project-》run

83. AS升级gradle和gradle plugin后报错

前提:as arctic fox2020.3.1 patch3 升级gradle和gradle plugin到

sync时报错 解决:在报错仓库闭包中添加:allowInsecureProtocol = true84. 在build时报错“resource android:attr/lStar not found.” 前提:在new了个module后,build时报错“AAPT: error: resource android:attr/lStar not found.” 解决: 参考:(1) 定位到

(2) 在app/中添加 { resolutionStrategy { force ':core:1.3.2' }} 和android{}同层级(3) sync-》run85. “The application could not be installed:INSTALL_PARSE_FAILED_MANIFEST_MALFORMED”,“Installation failed due to:'null'”前提:AS4.0.1,

SdkVersion配置为

问题:在run时报错

然后通过adb install方式显示:

原因:

参考

当我们的应用以Android 12为目标,使用的activity,service,broadcast receiver含有intent-filter,则必须显示声明属性,如果没有

声明,则我们的应用不能安装在Android 12上

解决:

声明属性即可解决。

不管exported是true或false,但在oppo手机上设为false点击app时显示“应用数据读取失败,无法启动应用”。

86. 安装失败-安装包异常

前提:oppo手机,debug包,AS4.0.1

问题:run时

原因:

参考:

造成该问题的原因是Android Studio 4.0.1会在debug apk的manifest文件application标签里自动添加 android:testOnly="true"属性。

该属性导致在IDE中使用Run生成的apk在大部分手机上只能用adb install -t 来安装。

这种apk在oppo手机上甚至安装不了。

解决:

在ties 文件中添加如下指令:

ly=false

release 发布的时候由于有签名,因此不会遇到这个问题。

87. AS的Device File Explorer显示不了

前提:AS4.0.1,root过的手机

解决:

2023年12月11日发(作者:邛高远)

Android编程常见问题及解决(持续更新)

Android涉及软硬件,因此相关的坑很多,以前每次都解决了就算了,现准备将这些错误记录下,以便以后查阅。这里只列出我自己的情

况。

如果看这篇blog的人觉得有哪些地方需要完善,欢迎指正。

我会对每个错误标明自己用的配置。

2. 透明Activity崩溃

配置:Window10,AS 3.1.3, buildToolsVersion:28.0.1, compileSdkVersion 28,手机:Nexus6P Android7.1.2(API25)

错误:

eException: Unable to start activity ComponentInfo{eapre2/

at mLaunchActivity(:2666)

at LaunchActivity(:2727)

at tyThread.-wrap12()

at tyThread$Message(:1478)

at chMessage(:102)

at (:154)

at (:6121)

at (Native Method)

at Init$(:889)

at (:779)

Caused by: lStateException: You need to use a pat theme (or descendant) with this activity.

at SubDecor(:555)

at SubDecor(:518)

at tentView(:466)

at tentView(:140)

at te(:19)

at mCreate(:6682)

at tivityOnCreate(:1118)

at mLaunchActivity(:2619)

at LaunchActivity(:2727)

at tyThread.-wrap12()

at tyThread$Message(:1478)

at chMessage(:102)

at (:154)

at (:6121)

at (Native Method)

at Init$(:889)

at (:779)

解决:透明Activity要继承Activity类

3. Unable to resolve dependency for ':app@debug/compileClasspath': Could not

download xxx

配置:Window10,AS 3.1.3, buildToolsVersion:28.0.1, compileSdkVersion 28

解决:

(1)

(2)

(3) fan qiang(亲猜最有效)

参考:

(4) 若以上三种都不行,很可能该依赖库不存在(见15),换成低版本的API

4. Ubuntu下adb devices:no permissions 问题

配置:Ubuntu16.04

解决:

5. No toolchains found in the NDK toolchains folder for ABI with prefix: mips64el-

linux-android

配置:Ubuntu16.03,AS3.1.3

解决:

最后只要在toolchains目录下执行ln -sf aarch64-linux-android-4.9 mips64el-linux-android即可,见评论2。

6. Manifest merger failed : Attribute application@appComponentFactory value=

(mponentFactory) from

[t:support-compat:28.0.0] :22:18-91

配置:Window10,AS3.1.3,Build Tools:28.0.1

前提:添加Dexter6.0.1依赖库(implementation ':dexter:6.0.1')后 build时报错

原因:AndroidX和Android Support库共存问题

解决:

(1) 法一:根据提示在中添加代码

android:appComponentFactory=""

tools:replace="android:appComponentFactory"

参考:

(2) 法二:参考:还没看

7. Error:Execution failed for task

‘:app:transformDexArchiveWithExternalLibsDexMergerForDebug’.

》hiveMergerException: Unable to merge dex。。

配置:Window10,AS3.1.3,Build Tools:28.0.1

前提:添加Dexter6.0.1依赖库(implementation ':dexter:6.0.1')后 build时报错

原因:包引用重复

解决:

(1) 法一:在module的的defaultConfig添加 "multiDexEnabled true"

参考:

补充:同时对multiDexEnabled的解释,粗略看了下这文章

好像不错,日后再读。总的说multiDexEnabled就是分Dex,因为ART之前Dex文件对方法索引用short类型存储,导

致最大方法数是65536,因此当项目足够大包含方法数(包括引用的外部Lib里的所有方法)超过65536,就会报

错。

(2) 法二:在module的的dependencies里把 implementation 't:appcompat-v7:28.0.0' 注释掉

参考:

补充:我用控制变量法,发现是添加了Dexter依赖的问题,但要用该库,所以注释了 implementation

't:appcompat-v7:28.0.0'。

8. Execution failed for task ':app:transformResourcesWithMergeJavaResForDebug'.

> More than one file was found with OS independent path 'META-

INF/_n'

配置:Window10,AS3.1.3,Build Tools:28.0.1

前提:按照7中的法一解决问题后,出现该问题。

原因:AndroidX和Android Support库不能共存

解决:6,7,8三个是连在一起的,我用了6的法一,7的法一,到这里build没问题,但Run app就有问题,说明还是没解决AndroidX和

Android Support问题,这两个概念之后要仔细整理下。

先解决问题,我首先根据网上多数说的方法,在(Module:app)中添加如下代码

packagingOptions {

exclude 'META-INF/_n'

}

但Run app时又出现了相似问题,只是路径不同而已。那这看来不是正确解决方法。参照,正确解决方法是回退依赖库,看了下

Dexter6.0.1源码的

确实导入了androidx依赖,那就回退到5.0.0版本,解决问题。

9. 将assets中资源作为File对象失败

前提:想将assets中资源作为File对象进行本地读取

原因:assets是在apk中的,无法实现

解决:如要读取assets资源,使用AssetManager

参考:

10. Caused by: lStateException: This Activity already has an action

bar supplied by the window decor. Do not request

E_SUPPORT_ACTION_BAR and set windowActionBar to false in

your theme to use a Toolbar instead.

前提:使用Material Design的ToolBar

解决:使用自定义style,去掉actionbar

参考:

11. AS突然不显示Logcat日志

前提:AS3.1.3,小米9(Android9)

解决:

(1) 重启

12. AS查找运行时问题步骤

前提:AS3.1.3,Win10

解决:根据以下顺序

(1) 查看Run;

(2) 查看Logcat

(3) Debug;

(4) 打log;

13. AS引入javax包(包括ImageIO等类)

前提:AS3.1.3,Win10

解决:

(1) 找到AS中路径;

(2) 在当前Module的中添加

compile files ('path/to/')

参考:

14. sfiedLinkError: No implementation found for long

.n_Mat() (tried Java_org_opencv_core_Mat_n_1Mat and

Java_org_opencv_core_Mat_n_1Mat__)

前提:AS3.1.3,Win10

解决:添加对so的依赖

参考: 第三、四步

15. ERROR: Unable to resolve dependency for ':app@debug/compileClasspath':

Could not find any version that matches t:appcompat-v7:30.+.

(待完善)

前提:AS3.1.3,Win10,new project时sync报错

原因:androidx和android support关系

解决:

(1) 将

implementation 't:appcompat-v7:30.+'替换为

implementation 'pat:appcompat:1.1.0'

参考:

16. Android App闪退(待完善)

解决:

(1) 检查View和资源id类型是否匹配(出现过ImageView和TextView的id进行findViewById导致的情况);

17. Error:Server returned HTTP response code: 403 for URL:

/distributions/

前提:AS3.1.3,Win10

原因:http协议不行

解决:

在ties中改成https

18. AS导入jar

前提:AS3.5,Win10

参考:

19. 警告:API 'aCompile()' is obsolete and has been replaced with

'aCompileProvider()'

待解决20. git clone报错“fatal: unable to access

'/wkxjc/CustomViewDemo/': SSL certificateproblem: unable to get

local issuer certificate”

前提:git 2.28.0,Win10

解决:命令行上运行 git config --global ify false 将安全验证关掉

参考:

21. 修改模块名

前提:AS4.0.1,Win10

解决:

(1) 右键module->Refactor->rename module and directory;

(2) 在中include ‘’刚改过的名字。

22. geBitmap无法显示

前提:AS4.0.1,Win10

解决:

(1) 把targetSdkVersion注释;(验证)

参考:

(2)修改Bitmap的显示比例;(未验证)

23. Android历史版本下载

url:

24. ERROR: This version of Android Studio cannot open this project, please retry

with Android Studio 4.0

前提:AS4.0.1,Win10

解决:将project的中如下改为自己as对应版本(我的是as3.5.3)

25. ERROR: Cause: unable to find valid certification path to requested target

前提:AS3.4,Win10

解决:在setting中开proxy

26. Error:android sfiedLinkError: No implementation found for long

.n_Mat

前提:AS3.1.3,Win10

原因:没有加载openCV4Android的库

解决:

在Activity中添加如下代码,并调用opencv4Loader():

private BaseLoaderCallback mLoaderCallback=new BaseLoaderCallback(this) {

@Override

public void onManagerConnected(int status){

switch (status) {

case S: {

Log.d("waterMark1", "OpenCV loaded successfully");

}

break;

default: {

gerConnected(status);

}

break;

}

}

};

private void opencv4Loader(){

if(!bug()){

Log.d("waterMark1", "Internal OpenCV library not found. Using OpenCV Manager for initialization");

ync(_VERSION_3_0_0, this, mLoaderCallback);

}else{

Log.d("waterMark1","OpenCV library found inside package. Using it!");

gerConnected(S);

}

}

参考:

27. 点“Attach Debugger to Android Process”出现debug info can be unavailable.

Please close other application using ADB: Monitor, DDMS, Eclipse错误

前提:AS3.1.3,Win10

解决:

(1) adb usb;

参考:

28. 华为EMUI手动装apk包时出现“无效安装包 与操作系统不兼容”错误

前提:AS4.0.1,Win10,EMUI Android 9

错误:第一次手动安装apk-debug正常,第二次手动安装改后的apk-debug时出现

原因:参考

EMUI改了Android的debug签名验证机制,如果用

生成,会导致EMUI无法解析。

解决:参考:

按一按下步骤

(1) Clean Project

(2) 用

build

29. 多线程调试时“Paused in another thread“

前提:AS4.0.1,Win10

解决:进入报错的函数内部继续调试定位问题

30. AS的(project)和ties对应列表

前提:Win10

列表:

AS

3.1.3

4.0.1

(project)

3.1.3

4.0.1

ties

4.4.1

6.1.131. lStateException: Cannot call this method while RecyclerView is

computing a layout or scrolling

Todo

32. Could not reset the state on your devices

前提:问题

解决:

(1) 重启app;

(2) 重启AS;

(3) 重启手机;

33. The layout "load_layout1" in layout has no declaration in the base layout folder;

this can lead to crashes when the resource is queried in a configuration that does

not match this qualifier

前提:在layout中添加新布局后,在布局中报错

解决:File => Invalidate Caches / Restart => Invalidate and Restart.

参考:

34. Unsupported Modules Detected: Compilation is not supported for following

modules:xx. Unfortunately you can't have non-Gradle Java modules and Android-

Gradle modules in one project.

前提:从网上down一个demo,在Build时报错

解决:删除.idea文件-》重新sync

这里.idea如下

参考:

35. 在AS无法导入库

前提:alt+enter指定类无法import

解决:重启AS

36. Dependent features configured but no package ID was set.

前提:在app module A依赖app module B(在A的中添加了implementation project(":A"))后在build时报错

原因:app module只能依赖library module

解决:将app module B改为library module,按以下步骤

(1) 把B的顶部改成 apply plugin: 'ation' ;

(2) 删除B的中android block中的applicationId行。

参考:

37. kOnMainThreadException

前提:在onCreate中用

InetAddress ip2=ame("");

原因:在>=android3.0后,在主线程进行网络操作会抛此exception。

解决:把网络操作放子线程。

38. no suspicious code found

前提:使用lint扫描全局时报错解决:

(1) 法一:重启as再扫描

38. INSTALL_FAILED_VERSION_DOWNGRADE

前提:用adb install时报错,当前手机已有旧commit的apk,要装新commit的apk

解决:adb install -r -d “apk名“

参考:

39. 使用lint查找无引用资源时的问题

前提:用as的lint查找”unused resources“时有bug

问题:

(1) 查找出的无引用资源中有的资源是有引用的,需手动复查;

(2) 用”remove declarations for xx“删除无引用资源会删除非预期资源,需用commit复查;

40. 切换到别的commit时直接build报错(存在xxGradle版本不支持的特性)

解决:切换到别的commit后先sync再build

41. layout inspector无法显示布局(nothing to show)

解决:

(1) 重启app;

(2) 开发者选项-USB调试 重开;

(2) 重启手机;

(3) 重启AS;

42. AS无法显示整个界面

前提:突然无法显示整个界面,但底部图标能点击

解决:删除AS配置文件(C:Users用户.AndroidStudioxx)-》重启AS

43. 打开较大hprof导致AS ANR

解决:修改AS的堆内存大小

参考:

44. AS debug/用layout inspector 时显示“no debuggable processes”

解决:

(1) 关闭整个AS进程并重启;

(2) 拔掉线重连手机;

45. 用LeakCanary抓到leak时报错Heap analysis

failed(NullPointerException)

前提:

LeakCanary的Heap Dumps中stacktrace如下

NullPointerException

at eakReferenceMirror$stance(:34)

at eakReferenceFinder$findKeyedWeakReferences$1$addedToContext$(:49)

at eakReferenceFinder$findKeyedWeakReferences$1$addedToContext$(:10)

at ormingSequence$iterator$(:172)

at ingSequence$iterator$xt(:132)

at ingSequence$iterator$t(:156)

at cesKt___ection(_:722)

at cesKt___bleList(_:752)

at cesKt___(_:743)

at eakReferenceFinder$findKeyedWeakReferences$(:54)

at eakReferenceFinder$findKeyedWeakReferences$(

:10)

at ut(:23)

at yedWeakReferences$shark(:35)

at akingObjectIds(:13)

at eGraph(:160)

at e(:99)

at eHeap(:83)

at leIntentInForeground(:60)

at leIntent(:55)

at Service$Message(:78)

at chMessage(:107)

at (:238)

at (:67)

_INT: 29

CTURER: OPPO

LeakCanary version: 2.5

Analysis duration: 1540 ms

hprof:见

解决:Todo

参考:

46. Unknown HPROF Version (JAVA PROFILE 1.0.3) (ption)

前提:将leakcanary获取的hprof放入MAT报错

原因:The hprof file you get from Android has android specific format. You should convert hprof file take from Android OS

into standard hprof format.

解决:

For this you can use hprof-conv tool that is located at AndroidSDK/tools/hprof-conv.

For example:

hprof-conv

参考:

47. ption: Could not delete lib xx

前提:想删除一个external library的jar,报错

解决:在项目根目录运行 gradlew clean清gradle缓存-》重新删

参考:48. Build Failed:Duplicate class xx found in modules (xx) and (xx)

前提:项目中通过如下方式

(1) project的中添加库;

(2) project的中buildscript的dependencies中加插件 class 'xx';

(3) module的中android闭包之后引入插件 apply plugin:‘xx’;

引入另个依赖库并sync后,在Run时报Build failed,duplicate class 。。。

原因:引入的依赖库存在和已有库重复的类

解决:在project的中添加如下配置去除重复依赖

49. Warning:debug info can be unavailable. Please close other application using

ADB:Monitor, DDMS, Eclipse

前提:Win10,AS4.0.1,打开过android device monitor,报了adb端口冲突 -》 关闭android device monitor,点debug报错

解决:

(1) 输入 adb usb;

(2) 重启电脑(关闭后台adb应用);

注:AS通过环境变量调用adb

50. make aar时报错

前提:make aar时报下错

解决:换个好代理

51. Cause: :443 failed to respond

前提:sync时报错

解决:

在proxy setting中check下是否连通:

若不能通说明代理问题;

52. no launcher activity found

解决:

(1)查看activity是否在manifest中有category设launcher;

(2) 重建app module,copy;

53. AS Build时报错出现乱码

解决:

(1) Help-》Edit Custom VM Options:添加 -ng=UTF-8

(2) Invalidate Caches/Restart

54. dRuntimeException: Calling startActivity() from outside of an

Activity context requires the FLAG_ACTIVITY_NEW_TASK flag. Is this really what

you want?

前提:在service用startactivity跳activity报错

解决:code中加

参考:

55. AS布局预览不显示

解决:

(1) design界面force refresh layout

参考:

56. AS引入material design

参考:

57. 查找手机上指定安装包

解决:adb shell-》pm list packages | grep "keyword"

58. Unable to resolve dependency for 'xx module@debug/compileClasspath': Could

not resolve project: xx module

前提:使用as辅助的为某个module添加依赖module后,sync报如下错

解决:todo

59. AS显示

解决:在手机 设置-》开发者选项 中把“日志记录器缓冲器大小”设大点或关闭

参考:

60. AS在启动时进入debug模式闪退

前提:在主线程中

解决:去掉断点(原因待纠)

参考:

下断点闪退

61. AS用layout inspector时app闪退

前提:AS4.0.1

解决:

按以下步骤依次尝试:

(1) adb kill-server-》adb start-server;

(2) 重启app;

(3) 重启AS;

(4) 重启手机;

62. AS中Gradle Build时报错:请求的操作无法在使用用户映射区域打开的文件上

解决:

(1) 重启AS

63. AS调试时断点不可用(No executable code found)解决方案

解决:

(1) clean project;

(2) 重新build安装;

(3) 启动app debug;

参考:

特例:

(1)

64. SSL peer shut down incorrectly

解决:

(1) 开代理;

参考:

65. no such instance field/no such static field

前提:debugger时变量显示如上

解决:关混淆(具体buildType设minifyEnabled false)

参考:

66. Android断点调试时闪退

前提:AS4.0.1

解决:

(1) adb kill-server -》 adb start-server;

(2) 重启app;

(3) 重启手机;

(4) 重启Android Studio;

(5) 重启电脑;

67. Android Studio无法新建module

前提:AS4.0.1右键项目名new无module选项

解决:Invalidate and Restart68. 修改代码后build project运行时修改未生效

解决:

(1) clean project;

(2) build project;

69. WebView相关

(1) 加载“”时WebView显示“net:ERR_CLEARTEXT_NOT_PERMITTED”

原因:从Android 9.0(API级别28)开始,默认情况下禁用明文支持。因此http的url均无法在webview中加载

解决:

【1】 在中的application标签加“android:usesCleartextTraffic="true";

【2】 使用https;

参考:

(2)WebView显示“net:err_cache_miss”

解决:文件中加入联网的权限

参考:

70. RecyclerView相关

(1) 调notifyDataSetChanged()未进入onCreateViewHolder,onBindViewHolder,

getItemCount

可能原因:

(1) 未写outManager();

72. 初次编译kotlin报错

前提:用AS或IDEA初次编译kotlin报错

解决:修改heap size

73. Failed to create voice “adc“

前提:启动AS自带模拟器时报错

解决:

(1) 插上耳机;

74. code is missing

前提:adb install时报错

解决:

(1) 重新build;

(2) clean project -》 重新build;

75. 请求的操作无法在使用用户映射区域打开的文件上执行

前提:

解决:

(1) 重新sync;

76. 对无法找到xx相关的总结

(1) no usages found in All Places/cannot resolve symbol xx/cannot find declaration to go to

前提:在AS中添加xx(多为资源),但马上引用时报错

解决:

【1】 检查是否拼写错误

【2】 重启AS;

(2) cannot resolve symbol R

配置:Window10,AS 3.1.3, buildToolsVersion:28.0.1, compileSdkVersion 28,手机:Nexus6P Android7.1.2(API25)

情况:有两种:存在和不存在,我目前只遇到不存在。不存在解决:

(1) 法一:Clean Project -> Rebuild Project

(2) 法二: 重启AS

(3) 法三: New一个Project,copy原来的

参考:

(1)

(2)(手动生成,日后学习下)

(3) ndException:xx

前提:存在xx,但运行时报exception

解决:

【1】 clean project-》build project;

77. 用AS进行commit时漏掉文件

前提:AS4.0.1,文件之前add了,但commit时未显示

解决:用AS进行commit前命令行 add .

78. adb install时显示failed to install

前提:adb devices正常 且 adb install显示failed to install apk

解决:

(1) 卸载原有apk-》adb install

参考:

79. findViewById报错nullpointerexception

前提:layout中有改id,但findviewbyid报错

解决:

(1) 换个module

80. Android studio 远程主机强迫关闭了一个现有的连接

前提:as arctic fox2020.3.1,点击run时报错

解决:(1) invalidate cache and restart

81. Android studio 在Gradle中无构建任务

前提:as arctic fox2020.3.1在

中没显示Tasks列表

解决:

去掉的钩然后sync

82. Android studio 报错“Type xxx is defined multiple times:。。。。”

前提:as arctic fox2020.3.1

解决:

(1) clean project-》run

83. AS升级gradle和gradle plugin后报错

前提:as arctic fox2020.3.1 patch3 升级gradle和gradle plugin到

sync时报错 解决:在报错仓库闭包中添加:allowInsecureProtocol = true84. 在build时报错“resource android:attr/lStar not found.” 前提:在new了个module后,build时报错“AAPT: error: resource android:attr/lStar not found.” 解决: 参考:(1) 定位到

(2) 在app/中添加 { resolutionStrategy { force ':core:1.3.2' }} 和android{}同层级(3) sync-》run85. “The application could not be installed:INSTALL_PARSE_FAILED_MANIFEST_MALFORMED”,“Installation failed due to:'null'”前提:AS4.0.1,

SdkVersion配置为

问题:在run时报错

然后通过adb install方式显示:

原因:

参考

当我们的应用以Android 12为目标,使用的activity,service,broadcast receiver含有intent-filter,则必须显示声明属性,如果没有

声明,则我们的应用不能安装在Android 12上

解决:

声明属性即可解决。

不管exported是true或false,但在oppo手机上设为false点击app时显示“应用数据读取失败,无法启动应用”。

86. 安装失败-安装包异常

前提:oppo手机,debug包,AS4.0.1

问题:run时

原因:

参考:

造成该问题的原因是Android Studio 4.0.1会在debug apk的manifest文件application标签里自动添加 android:testOnly="true"属性。

该属性导致在IDE中使用Run生成的apk在大部分手机上只能用adb install -t 来安装。

这种apk在oppo手机上甚至安装不了。

解决:

在ties 文件中添加如下指令:

ly=false

release 发布的时候由于有签名,因此不会遇到这个问题。

87. AS的Device File Explorer显示不了

前提:AS4.0.1,root过的手机

解决:

发布评论

评论列表 (0)

  1. 暂无评论