使用Bmob遇到的坑与解决办法

先说下为什么使用Bmob:

准备开发一个自己使用的小工具,直接在别人的开源代码进行的开发,这个项目只有本地数据的存储,我想加个网络存储的功能,因为之前听朋友说过Bmob,于是便选择使用它了。


坑一:依赖包出现了冲突

于是我便按照官网的文档使用Android Studio一步步添加依赖,所有都弄好了,一编译发现Bmob依赖的库与之前添加的Rxbinding依赖的Rxjava库出现了冲突,于是百度寻找解决依赖冲突的方法,最后发现了Gradle中的exclude可以设置库不添加对某个库的依赖,但是我设置了之后没有起作用,我的依赖如下:

 compile('cn.bmob.android:bmob-sdk:3.5.0') {
         exclude group: 'io.reactivex:rxandroid'
         exclude group: 'io.reactivex:rxjava'
     }
希望有知道的大牛能告诉下我为什么没起作用。

Gradle依赖参考:点击打开链接

坑二:so文件没有被引入

没办法,只能手动添加依赖库了...下载sdk把rxjava和rxAndroid之外的库全部放入libs文件夹,这时候编译倒是过了,于是便按照Bmob的文档初始化,结果又报错:

  java.lang.UnsatisfiedLinkError: No implementation found for boolean cn.bmob.v3.helper.BmobNative.init(android.content.Context, java.lang.String) 
这种初始化出现问题的一般都是库没有添加,哎,我一看libs里面.so文件都有啊,那只能是没有关联上,真是麻烦,只能继续百度之,找到一篇正确添加.so文件的文章,在gradle中添加了下面脚本成功的引入了.so文件...

task nativeLibsToJar(type: Zip, description: "create a jar archive of the native libs") {
    destinationDir file("$projectDir/libs")
    baseName "Native_Libs2"
    extension "jar"
    from fileTree(dir: "libs", include: "*****///*//*.so")
    into "lib"
}

tasks.withType(JavaCompile) {
    compileTask -> compileTask.dependsOn(nativeLibsToJar)
}
正确引入so文件参考: 点击打开链接



评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值