原创:
发现android里面不熟悉的东西太多了,查了好多资料,终于搞清楚Library第三方类库源码, Jar包和SO库这些都是干什么的了,怎么使用它们了。
【Library第三方类库源码】
Java中单纯的java文件可以打包成库,但是andorid中的模块可能会包含一些资源文件、或者对android有依赖等等,这时就需要Library了,可以实现通用模块的重复使用。
引用Library:
1.以模块Module的形式添加进来(本系列教程有讲到Module)。
2.加入依赖,build.gradle下写入
dependencies {
compile project(':libcocos2dx')
}
【Jar包】
JAR 文件就是 Java Archive File,是 Java 的一种文档格式,因为跟ZIP很相似,所以叫包,比 ZIP 文件就多了 一个 META-INF/MANIFEST.MF 文件,只包含java代码,不可修改。
Jar包存放路径:libs文件夹
引用Jar包:
build.gradle下写入
dependencies {
compile files('libs/umeng_social_sdk.jar') //单个Jar包
compile fileTree(dir: 'libs', include: ['*.jar']) //所有Jar包
}
【SO库】
Linux系统下的动态库文件, 就像win系统下的dll文件差不多。由C/C++库文件编译成so文件。可以让JAVA调用C++程序。
SO库存放路径:src\main\jniLibs\armeabi文件夹(普通CPU) 也可以是armeabi-v7a文件夹(32位ARMv7 CPU) 还可以是arm64-v8a文件夹(64位ARMv7 CPU)
引用SO库:
build.gradle的android节点下写入
sourceSets.main {
jniLibs.srcDir 'libs'
jni.srcDirs = []
}
或者
sourceSets {
main {
jniLibs.srcDirs = ['libs']
}
}
这个地方其实我还没搞太懂,这两种写法有的时候一个对一个错,还要深入研究一下,哪个对用哪个。引用成功的话,会在Android目录结构下看到这个SO文件,反之找不到这个文件。
如果觉得《android studio开发十一 Library第三方类库源码 Jar包和SO库》对你有帮助,请点赞、收藏,并留下你的观点哦!