在MgAndroidSdkProcessorScript.cs脚本的构造函数中,会调用InitBegin()进行mgsdk初始化并开启遮罩。 初始化结果返回后会调用onInitSdkResult方法
void InitBegin() { MgSdkConfig config = new MgSdkConfig(); //在此配置相应的属性 config.AppKey = "0B51BDA9F7";//必需,应用标识 config.CallbackId = "";//可选,支付回调id string s = config.toJson(); mgSdkProcessor.initSDK(config);//进行mgsdk初始化 } void onInitSdkResult (String message) { //message是以逗号分隔”success,xxx,yyy,zzz” string param = "";//附加参数 string result = parseMessage(message, out param); //解析android端消息 if (result == "success")//成功返回success,否则就失败 { isInit = true; showLogin();//可以在此显示登录窗口 } else { Debug.LogError("初始化mgsdk失败:" + param); } }
可以在初始化成功回调onInitSdkResult中调用showLogin()显示登陆窗口。 登录成功后会调用onLoginSuccess方法
void onLoginSuccess(String message) { //登陆成功后关闭遮罩,玩家可以游戏 UIEventMaskEnd(); }
在需要支付的地方,调用Payment,并传入参数 MgAndroidSdkProcessorScript.Instance.Payment(“商品key,mg后台生成”,”自定义数据,可以为订单号”).
void onPaymentResult(String message) { string param = "";//附加参数 string result = parseMessage(message, out param); //解析android端消息 if (result == "success")//成功返回success,否则就失败 { Debug.LogError("支付成功:" + param); } else { Debug.LogError("支付失败:" + param); } UIEventMaskEnd(); //支付结束后关闭遮罩,玩家可以游戏 }