升级Android studio 3.3后出现的问题总结与解决

1、打开项目 不能运行的解决办法

此类问题目前发现过几类。

第一类,是编译不通过。
1、build配置错误
此时需要检查build窗口相关信息,根据错误信息追踪定位
部分问题可以通过图中的窗口追踪到
目前遇到错误有 gradle 版本低于Android studio 中要求的版本,为升级前的gradle版本
解决方法修改图中红线的两个文件
在这里插入图片描述
gradle-wrapper.properties

distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.1-all.zip

build.gradle(工程目录下)版本号为你的Androidstudio 的版本号

        classpath 'com.android.tools.build:gradle:3.3.1'

2、资源文件,代码文件错误
更新IDE版本后发现有时候自己程序中或布局文件中出现错误(多数是资源引用不存在)时,对应的文件并没有红色的下划线提示,这些错误会导致编译不通过。此类错误可以在如图所示的命令行查看
点击红色箭头所指按钮可以出现build命令行,会记录在build过程中的信息,当然也包括警告,和错误。资源引用错误会在这里指出
第二类、同步时出现问题

1、sync 卡在 read from cache ,无法在手机上调试运行应用
在这里插入图片描述
先尝试了clean rebuild 等操作,之前编译不报错变成了编译错误,定位到资源文件修改后,重复,仍然还有问题。此时build 已经没有问题了

之后参考了https://stackoverflow.com/questions/54586363/android-studio-3-3-stuck-at-project-setupreading-from-cache
中的解决方案,将 .gradle/caches/ 目录下的所有文件删除,重启Android studio,解决了
On macOS/Linux: $HOME/.gradle/caches/
On Windows: %USER_HOME%.gradle/caches/
(19.3.15更新)----------------------------------start------------------------------
也可尝试
点击箭头所指选项

2、编译报错Could not find com.android.tools.lint:lint-gradle:26.3.1.
第二天启动又会出现新的问题导致不能运行。真心想吐槽新版Android studio 的错误检查
解决方法 stackoverflow
检查项目目录 的build.gradle 中是否缺少 google()
如缺少则添加该语句。添加后类似下面所示,注意google()应放在jcenter()
之前,参考 该文章中的评论

buildscript {
    repositories {
        google()
        jcenter()
        maven {
            url 'https://maven.google.com/'
            name 'Google'
        }
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.3.1'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        google()
        jcenter()
        maven {
            url 'https://maven.google.com/'
            name 'Google'
        }
    }
}

(19.3.15更新)----------------------------------end------------------------------

2、手机usb调试模式下电脑可识别,Android studio不识别的问题(缺失dll文件等非端口占用问题)

这里好好记录一下,之前遇到过此类问题,有可能是adb的专有端口5037被其他程序占用 通过
win+R 调用命令行 输入

netstat -ano|findstr "5037"

找到占用adb端口的程序,通过任务管理器结束

可是这里问题不在这里,所以并没有用

出现了运行adb 缺少api-ms-win-crt-locale-L1-1-0.DLL文件,网上下载了相关文件放入指定目录后,又报0xc000007b错误。上网接着查找,说是缺少了directX 或者 C++ Redistributable Package 的问题。
于是下载了directx修复程序。如果通过此程序还未解决,可以浏览 0xc000007b的解决办法(续)。这篇文章的作者也就是修复工具的作者。注意,不只是游戏,只要是应用程序出现类似问题,都可以参考上方的解决方案。

猜你喜欢

转载自blog.csdn.net/fighting_2017/article/details/88554381