集成趣拍SDK的那些事

在自己的app中集成趣拍sdk花费了我上周2天加这周一个上午的时间,其中遇到了很多问题,查了很多资料,也咨询了阿里和趣拍的技术支持人员,终于在昨天上午完成了趣拍SDK的集成,其中遇到的问题与具体解决方案如下:
1.jar包重复问题,这个问题不光是在集成趣拍的SDK中可能遇到,在集成其他的第三方jar包时都有可能遇到这个问题,这也是我在集成第三方jar包时最常遇到的问题
这里写图片描述

具体解决的方法是:删除重复的jar包,以后在导入jar包时,尽量使用gradle导入
2导入第三方SDK时的版本问题
这里写图片描述

在导入趣拍SDK时,android-support-appcomact-v7与recyclerview-v7包时,版本必须是22.2.0,而导入趣拍SDK时,默认的版本是23,这会导致趣拍SDK在编译时找不到资源的问题,具体的解决方式是将版本号修改为22.2.0,并且要注意compilesdkversion的版本号与gradle中dependencies的包的版本号相同
3.在导入趣拍SDK时出现方法数超过65536,这是因为大量的引入第三方sdk与公共支持的jar包,项目耦合性高,重复作用的类越来越多
这里写图片描述

而解决这个问题的方法就是使用android官方提供的android-support-multi-dex包,具体的安卓官方文档https://developer.android.com/intl/zh-cn/tools/building/multidex.html
而在使用这个包的时候还有可能出现类似于
DexException: Library dex files are not supported in multi-dex mode, 对于dex 的–multi-dex
1. Error:Execution failed for task ‘:app:dexDebug’.
2. > com.android.ide.common.internal.LoggedErrorException: Failed to run command:
3. $ANDROID_SDK/build-tools/android-4.4W/dx –dex –num-threads=4 –multi-dex
4. …
5. Error Code:
6. 2
7. Output:
8. UNEXPECTED TOP-LEVEL EXCEPTION:
9. com.android.dex.DexException: Library dex files are not supported in multi-dex mode
10. at com.android.dx.command.dexer.Main.runMultiDex(Main.java:322)
11. at com.android.dx.command.dexer.Main.run(Main.java:228)
12. at com.android.dx.command.dexer.Main.main(Main.java:199)
13. at com.android.dx.command.Main.main(Main.java:103)

选项设置与预编译的library工程有冲突,因此如果应用中包含引用的lirary工程,需要将预编译设置为false:
1. android {
2. // …
3. dexOptions {
4. preDexLibraries = false
5. }
6. }
OutOfMemoryError:
1. UNEXPECTED TOP-LEVEL ERROR:
2. java.lang.OutOfMemoryError: Java heap space

在dexOptions中有一个字段用来增加java堆内存大小:
1. android {
2. // …
3. dexOptions {
4. javaMaxHeapSize “2g”

还有就是阿里的验证图片的问题,提供给阿里的apk文件并不是app签名后直接生成的,而是在C:\Present\app\build\outputs\apk包中的文件

在解决这些问题之后,趣拍SDK基本上就集成完成了

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值