记AndroidStudio上的一些问题(1)
1、Android Gradle Build Error:Some file crunching failed, see logs for details解决办法
Log:
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:mergeDebugResources'.
> Error: java.lang.RuntimeException: Crunching Cruncher ic_default_home_new.png failed, see logs
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
解决方法如下:
\app\build.gradle
android {
compileSdkVersion 23
buildToolsVersion "23.0.3"
//////////////////添加段代码即可////////////////
aaptOptions {
cruncherEnabled = false
useNewCruncher = false
}
////////////////////////////////////////////
defaultConfig {
applicationId "com.example.maksginmai"
minSdkVersion 15
targetSdkVersion 22
versionCode 2
versionName "1.0.1"
ndk {
//设置支持的SO库架构
abiFilters 'armeabi', 'x86', 'armeabi-v7a', 'x86_64', 'arm64-v8a'
}
}
}
出现这个错误的原因是构建Gradle的时候,Gradle会去检查一下是否修改过文件的后缀名,
一半大多数是出现在图片上,.jpg修改成了.png就会出现这个问题
2、导入一个AndroidStudio工程作为一个Library Module
我有两个工程:maksmaigin和autolayout,我想导入autolayout到maksmaigin作为一个module
首先,我需要从autolayout工程中找到module中的build.gradle文件,它通常在app目录下,除非你修改了module的名称。
注意builde.gradle文件的plugin是‘com.android.application’。为了使用这个工程作为一个library工程,我们需要修改为 ‘com.android.library’。同时删除applicationId;
然后, 点击Sync Now;autolayout工程就修改完了。
接下来, 在maksmaigin工程中导入
autolayout作为一个module。
在maksmaigin工程中, 点击File -> New -> Import Module。
出现一个对话框
到这一步差不多已经完成,最后一步是在maksmaigin工程中修改依赖。
很多人会忘了做这一步。
就可以在maksmaigin工程的/app/build.gradle里面看到
最后, 这有一个很重要的问题,autolayout工程有它自己的依赖。例如,maksmaigin和autolayout使用support libraries,这有可能会发生冲突。
我们可以在gradle中通过transitive配置依赖避免这个问题。
我们可以修改这行。
Well Done!