Unity3D 运营商支付 安卓打包的陷阱 libunicomsdk.jar
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Unity3D 运营商支付 安卓打包的陷阱 libunicomsdk.jar相关的知识,希望对你有一定的参考价值。
Unity3D 运营商支付 安卓打包的陷阱 libunicomsdk.jar
说明
想想做Unity3D SDK集成已经快2年了,遇到过不少很棘手的SDK,其中以运营商的SDK为主。
在我的另外的一篇文章中提到移动MM
在使用Unity打包之后找不到文件mmiap.xml
的解决办法。
发生这种现象的最明显的现象是:
- 使用IDE运行官方所给的Demo,或者是自己做测试程序的时候,运行很正常
- 但是在使用Unity3D打包之后就会发现无法正常使用,在logcat中查看就会发现,大体都是找不到xxxx文件。
举个例子来说:
在集成
联通SDK
的时候,就会报错:java.io.FileNotFoundException:armeabi/libunicomsdk.jar
类似这种现象我也见过不少,后来我找到了原因所在:
运营商所给的jar包,不仅包括.class
文件,而且更多的是将assets的资源文件打包进去
。
截图为证
移动MM
移动MM的mmsmsbilling1.2.3.jar
包内容。
联通sdk
联通Multimode_UniPay_base.jar
包内容。
解决方法
-
使用解压软件将jar包解压
-
将解压后在文件夹
/assets/
下的文件复制到项目工程的assets文件夹下
。 -
将余下的
com cn等含有.class文件的文件夹
使用jar -cvf com.jar com
命令打包成新的jar包。(命令中的com
为文件夹)也可以使用
jar -cvf ../com.jar .
这个打包当前目录下所有的文件 -
将新的jar包放在
项目的libs文件夹
下。 -
使用unity打包就OK 了
以上是关于Unity3D 运营商支付 安卓打包的陷阱 libunicomsdk.jar的主要内容,如果未能解决你的问题,请参考以下文章
unity3d在android安卓中用啥代替pc上的OnMouseDown函数
使用Unity3d内置IAP插件 实现IOS和Google Play双端支付