在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(); //支付结束后关闭遮罩,玩家可以游戏
}