Android开发碰到的环境问题记录
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
21. 在项目的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 | assets目录下文件Uri: file:///android_asset/$文件名 |