两点:
1 首先看一下下面这篇文章,这是必须的
http://blog.csdn.net/qq_15267341/article/details/51961665
AndroidJavaClass jc = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
AndroidJavaObject jo = jc.GetStatic<AndroidJavaObject>("currentActivity");
jo.Call("zhiFu",new object[]{"xxxx7","5","8","shabi"});
特别特别要注意,unity传递的参数一定要是字符串,否则点击商品进行购买支付时,会卡死
在原生的android测试demo工程中,新建一个Activty,继承UnityPlayerActivity
备注:PayDemo 为测试demo的支付Activty
说明:
Unity中jo.call传递的参数不管是整型还是浮点型,全部为字符串,
但是有时候在接入平台支付SDK的时候,你会发现将平台的SDK原生Android 工程打成jar包 ,嵌入到unity中去,然后最后在unity中出最后的apk包,这条路是行不通的
这时候需要反过来,将unity工程导出成Android原生工程,然后将其嵌入平台的Android的测试demo中,会发现 一切OK
unity嵌入Android:
http://blog.csdn.net/qq_15267341/article/details/52692407
FR:海涛高软(Hunk Xu)