最近在忙着接入公司各个渠道的SDK,遇到很多的坑,在这里记录下来,给后来的同学一点借鉴。
首先说明一下,我是采取android studio打包aar放入Unity的方式接入SDK的,如果没有过安卓开发经验的同学可以看这里,点击打开链接,http://www.manew.com/thread-103445-1-1.html,蛮牛上写的挺详细,就不赘述了,另外提醒同学们最好去了解一下android 的生命周期函数,AndroidManifest.xml的配置信息的一些基本知识,这样可以有助于更快的接入SDK(少踩坑)。
unity无法读取Plugins下aar包内assets文件夹下的资源,可以用压缩软件解压aar包,把assets下的资源复制,在unity plugins/Android下新建assets放入即可,
另外有些SDK给的jar包里也会有assets文件夹下的资源,解决方法同上(最好打开jar包看一下)
如果sdk需要 .so 文件的话,请在app的build.gradle文件buildTypes大括号后加入
sourceSets.main { jniLibs.srcDirs = ['libs'] }
.so文件放入libs文件夹下打包出来,用解压软件找到,放入unity plugins/Android/libs/armeabi-v7a 文件夹下即可看到
如果调出sdk支付界面按home再切换回来SDK支付界面消失,是因为Unity打包默认设置launchModel的singleTask属性,可以在xml配置里主activity里加入
<activity android:name="这一行是你自己的类名,不要复制哦" android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen" android:screenOrientation="sensorLandscape"