BUG汇总 2

1. No USB devices or running emulators detected

问题描述:手机已开启USB调试模式的前提下,仍无法连接到真机
解决办法:设备管理器中出现带感叹号的ADB Interface,说明是USB驱动没有安装好,解决办法见此


2.Installation failed with message INSTALL_FAILED_USER_RESTRICTED: Install canceled by user.

问题描述: 在手机已经安装本应用的的情况下,再次安装可能有一定的几率安装不成功,提示如上的安装失败信息
解决办法: 这里对魅族和小米手机做特别说明,需要关闭USB安装管理

  • 魅族手机关闭USB安装管理:打开手机管家->点击权限管理->点击USB安装管理->关闭USB安装管理
  • 小米手机关闭USB安装管理:打开开发者选项->打开USB安装(允许通过USB安装应用)

3.Execution failed for task ':app:preDebugAndroidTestBuild'. Conflict with dependency 'com.android.support:support-annotations' in project ':app'. Resolved versions for app (26.1.0) and test app (27.1.1) differ. See https://d.android.com/r/tools/test-apk-dependency-conflicts.html for details.

问题描述: 打开AS项目编译时总会报如上错误信息,可以发现在External Libraries中出现依赖包冲突,虽然删除多余的27.1.1包再Rebuild Project可以解决问题,但是重启AS还会复现
解决办法: 可以尝试在在app的build.gradle文件中的dependences {}中添加如下代码:

androidTestCompile('com.android.support:support-annotations:26.1.0') {  
    force = true  
}  

4.SDK location not found. Define location with sdk.dir in the local.properties file or with an ANDROID_HOME environment variable.

问题描述: 导入项目后报如上错误信息,有可能是Mac无法读取到local.properties里的配置的情况
解决办法: 首先明确sdk位置,如图:

然后打开终端输入如下命令:

launchctl setenv ANDROID_HOME /Users/chenmin08/Library/Android/sdk

最后重启AS


5.Gradle:Resolve dependencies ':classpath'(一直)

问题描述: 在确认Gradle已经下载好前提下,卡在以上流程
解决办法: 很可能是代理问题,在路径File->Settings->Appearance&Behavior->System Settings->HTTP Proxy,选择Manual proxy configuration手动设置代理,如有必要也允许Enable Https Proxy


6.Activity XXX has leaked window

问题描述: 当界面是处于弹出Dialog的状况下直接让应用退出,或者点击Dialog的confirm按钮跳转至另一Activity时,会打印出Dialog的WindowLeaked窗体泄露异常的日志
解决办法: 在该Activity的onDestroy()手动将dialog实例对象销毁掉

public void onDestroy() {
    super.onDestroy();
    if(mDialog!=null && mDialog.isShowing()){
        mDialog.cancel();
    }
}

7.ScrollView

问题描述: 在ScrollView中加入的控件不能自动扩展到屏幕高度,即属性android:layout_height="match_parent"失效
解决办法: 给ScrollView添加一个属性android:fillViewport="true"


8.Could not find lint-gradle-api.jar(com.android.tools.lint:lint-gradle-api:26....

问题描述: 导入项目时无法编译成功,提示以上错误信息
解决办法: 在project的build.gradle中添加一行代码google(),注意顺序

buildscript {
    repositories {
        google()
        jcenter()
    }
}

9.Error:A problem occurred configuring project ':modules:XXX'.Failed to find target with hash string 'android-27' in: C:\Users\XXX\AppData\Local\Android\Sdk

问题描述: 编译报错在SDK文件夹下未找到android-27,无法运行
解决办法: 打开settings->Appearance&Behavior->System Settings->Android SDK,勾选需要的Android API并apply,完成下载


10.Error:Failed to find Build Tools revision 27.0.3.Install Build Tools 27.0.3 and sync project

问题描述: 编译报错缺少27.0.3版本的编译工具,无法运行
解决办法:

step1:下载地址链接

step2:选择需要的编译工具版本并下载



step3:解压后放到C:\Users\XXX\AppData\Local\Android\Sdk\build-tools下



收藏一个网站:整理Android开发所需的Android SDK等资源
END