Android Studio 启动失败,报错“ChannelException: Unable to create Channel from class class ”

错误信息:
Internal Error. Please report to https://code.google.com/p/android/issues

io.netty.channel.ChannelException: Unable to create Channel from class class
io.netty.channel.socket.oio.OioServerSocketChannel at
io.netty.channel.ReflectiveChannelFactory.newChannel(ReflectiveChannelFactory.java:40) at
io.netty.bootstrap.AbstractBootstrap.initAndRegister(AbstractBootstrap.java:316) at
io.netty.bootstrap.AbstractBootstrap.doBind(AbstractBootstrap.java:281) at
……

解决方法:
1- Open CMD (Use Administrator Mode Run)
2- Type and run: netsh winsock reset
参考:https://stackoverflow.com/questions/41152529/android-studoi-does-not-launch

在3.2.x版本AndroidStudio中打开旧工程各种报错处理

错误1:No toolchains found in the NDK toolchains folder for ABI with prefix: mips64el-linux-android
解决方法:
1.在工程的build.gradle中修改classpath ‘com.android.tools.build:gradle:3.2.1’,使用新版本的buildtools
2.修改gradle-wrapper.properties文件,更新gradle版本:distributionUrl=https\://services.gradle.org/distributions/gradle-4.6-all.zip

错误2:Could not set unknown property ‘enforceUniquePackageName’ for object of type com.android.build.gradle.internal.dsl.BaseAppModuleExtension.
解决方法:
enforceUniquePackageName 这个参数在插件3.0.1已经废弃,直接删除即可;在2.2.2如果没有这个参数可能会出现more than one library with package name ‘xxx’之类的错误;

错误3:Cannot set the value of read-only property ‘outputFile’ for ApkVariantOutputImpl_Decorated
解决方法:
Use all() instead of each()
Use outputFileName instead of output.outputFile if you change only file name (that is your case)
https://stackoverflow.com/questions/44239235/android-gradle-3-0-0-alpha2-plugin-cannot-set-the-value-of-read-only-property

之前正常的工程突然编译出错,提示某个资源找不到:

1
C:\Users\xxx\.gradle\caches\transforms-1\files-1.1\xxx.aar\$md5-xxxxxx\res\values-v21\values-v21.xml:14:5-18:13: AAPT: error: resource drawable/notification_action_background (aka xxx:drawable/notification_action_background) not found.

解决方法:原因是gradle中引入的某个lib未成功下载解压导致的,根据报错信息,进入”C:\Users\xxx.gradle\caches\transforms-1\files-1.1\xxx.aar\”目录,删除报错的”$md5-xxxxxx”目录,重新编译即可。

kotlin项目格式化代码样式问题

解决方法:

1
2
1. 在项目的gradle.properties文件中注释掉"kotlin.code.style=official"的配置行
2. 打开设置:File - Settings - Editor - Code Style - 将"Scheme"的值由"Project"改为"Default"后保存即可

AndroidStudio设置代理后,关闭代理无效的问题

解决方法:

1
设置代理后会在"C盘用户目录/.gradle"文件夹下的"gradle.properties"文件中加上代理配置,需要手动删除这个文件中的代理配置后重启AndroidStudio

AndroidStudio升级到3.5版本后,xml格式化快捷键使用之后,布局会出现错乱问题

解决方法:

1
2
方法1:在设置里,Appearance& Behavior > Editor > Code Style > XML 界面,点击“Set from…”,选择“Predefined Style”>“Android”,保存设置。
方法2:在布局界面,同时按 ctrl + shift + alt + l (MAC:command + shift+ option + L) (注意不是ctrl + alt + l). 弹出的选项中去掉Rerange code 即可!

一些知识点

1
2
assets目录下文件Uri: file:///android_asset/$文件名
res目录下文件Uri: "android.resource://" + context.packageName + "/" + resourceId(Int型资源id)