-
互相依赖的多个module生成release aar问题
-
npm install时报错:npm WARN enoent ENOENT: no such file or directory
解决方法:
1.认为是npm版本原因造成,经过执行以下命令修改了node版本到v10.8.0
sudo npm cache clean -f
sudo npm install -g n
sudo n stable
2.发现依然有问题,怀疑是不是因为高版本生成的依赖文件有变化,通过一下命令生成package.json.
npm init -f
3.果然package.json有更新,问题要解决了?兴高采烈的执行npm install,出现提示Maximum call stack size exceeded npm的错误,尴尬!!!
最新版本的node 是用来npm6版本,而该版本导致该内存溢出报错Maximum call stack size exceeded npm。
解决问题的方法也很简单,就是单独对npm进行降级处理。在安装了node最新版本后,再对npm版本降级为3.XX版本。
npm install npm@3 -g
4.npm install 搞定
- 依赖第三方包造成的一些类库版本号冲突
https://blog.csdn.net/yuzhiqiang_1993/article/details/78214812
4 .android gradle依赖:implementation 和compile的区别
https://www.jianshu.com/p/f34c179bc9d0
5 . More than one file was found with OS independent path 'lib/armeabi-v7a/libgnustl_shared.so'
解决:
packagingOptions
pickFirst 'lib/armeabi-v7a/libgnustl_shared.so'
}
说明:
gradle的一些配置文件:
android {
defaultConfig {
//默认配置项
}
buildTypes {
// 编译配置,release或debug版本的内容
}
compileOptions {
// Java 的版本配置
}
sourceSets {
//源码设置(项目目录结构的设置)
}
packagingOptions {
//打包时的相关配置
}
lintOptions {
//编译的 lint 开关,程序在buid的时候,会执行lint检查,有任何的错误或者警告提示,都会终止构建,我们可以将其关掉。
//abortOnError false
}
productFlavors {
//产品发布的一些东西,比如渠道、包名等
flavor1 {
}
flavor2 {
}
}
signingConfigs {
//签名的配置
release {
}
}
}
packagingOptions –打包时的相关配置
当项目中依赖的第三方库越来越多时,有可能会出现两个依赖库中存在同一个(名称)文件。如果这样,Gradle在打包时就会提示错误(警告)。那么就可以根据提示,然后使用此方法将重复的文件剔除。
- vivo手机无法安装未知来源应用,也找不到地方可以设置。
原因:
Android Studio 3.0会在debug apk的manifest文件application标签里自动添加 android:testOnly="true"属性,导致IDE中run跑出的apk在大部分手机上只能用adb install -t <apk>来安装,在oppo,vivo手机上甚至安装不了
解决方法:
在gradle.properties(项目根目录或者gradle全局配置目录 ~/.gradle/)文件中添加android.injected.testOnly=false
网友评论