/** * 问题1:参数传递最好改用json...懒得去搞了!!! * 问题2:安卓和IOS的所需的相关参数竟然不同,MMP!!!,凑合用不改了。。。 */ #if UNITY_IOS using GameLogic; using System.Runtime.InteropServices; using System.Text; namespace KTSDK.iOS { public class iOSProxy : Proxy { //初始化 [DllImport("__Internal")] private static extern void m_KTInit(string totalStr); public override void Init(KTSDKInitArgs args) { StringBuilder sb = new StringBuilder(); sb.AppendFormat("{0}#{1}", args.appid, args.appkey); m_KTInit(sb.ToString()); } //登录 [DllImport("__Internal")] private static extern void m_KTIogin(); public override void Login() { m_KTIogin(); } //退出游戏 [DllImport("__Internal")] private static extern void m_KTExit(); public override void Exit() { m_KTExit(); } [DllImport("__Internal")] private static extern void m_KTPay(string totalStr); public override void Pay(KTSDKPayArgs args) { StringBuilder sb = new StringBuilder(); sb.AppendFormat("{0}#{1}#{2}#{3}#{4}#{5}#{6}#{7}#{8}#{9}#{10}#{11}#{12}#{13}#{14}", AppConst.TokenStr, args.zoneId, args.serverID, args.serverName, args.roleID, args.roleName, args.roleLevel, args.productId, args.productName, args.roleID, "",//extendbox "",//gateway AppConst.OpenId, "",//payext args.price); m_KTPay(sb.ToString()); } //sdk 获取设备标识 [DllImport("__Internal")] private static extern string m_KTGetDeviceID(); public override string GetDeviceID() { return m_KTGetDeviceID(); } //sdk 获取IMEI [DllImport("__Internal")] private static extern string m_KTGetIMEICode(); public override string GetIMEICode() { return m_KTGetIMEICode(); } //sdk获取支付订单号 [DllImport("__Internal")] private static extern string m_KTGetPayOrderID(); public override string GetPayOrderID() { return m_KTGetPayOrderID(); } } } #endif