using System; using System.Collections; using System.Collections.Generic; using UnityEngine; namespace LoyalSoftSDK { public class LoyalGameSDKAndroid : LoyalGameSDK { private AndroidJavaObject jo; public LoyalGameSDKAndroid() { using (AndroidJavaClass jc = new AndroidJavaClass("com.unity3d.player.UnityPlayer")) { jo = jc.GetStatic("currentActivity"); } } private T SDKCall(string method, params object[] param) { try { return jo.Call(method, param); } catch (Exception e) { Debug.LogError(e); } return default(T); } private void SDKCall(string method, params object[] param) { try { jo.Call(method, param); } catch (Exception e) { Debug.LogError(e); } } public override void Init() { Debug.Log("newinit"); LoyalGameSDKCallBack.InitCallback(); SDKCall("initSDK"); } public override void Login(bool autoLogin) { Debug.Log("等待拉去登录:" + plantName); if(plantName.Equals("loyal")) { SoftSDKInstance.GetInstance().LoginSDK(autoLogin); } else { SDKCall("loginSDK"); } } public override void Login(string plant) { SDKCall("loginSDK", plant); } public override void Logout() { if (plantName.Equals("loyal")) { SoftSDKInstance.GetInstance().LogOutSDK(); } else { SDKCall("logoutSDK"); } } public override void SubmitGameData(LoyalGameExtraData extraData) { if (plantName.Equals("loyal")) { SoftSDKInstance.GetInstance().SubmitData(); } else { //SDKCall("submitGameData", extraData.GetSendCallString()); } } public override void ExitGame(LoyalGameExtraData extraData) { if (plantName.Equals("loyal")) { SoftSDKInstance.GetInstance().ExitGame(); } else { if(extraData==null) { SDKCall("exitGame", "noLogin"); } else { SDKCall("exitGame", extraData.GetSendCallString()); } } } public override void Pay(LoyalGamePayData payData) { if (plantName.Equals("loyal")) { Debug.Log("sdkandroid pay"); SoftSDKInstance.GetInstance().Pay(payData.productid, payData.productname, payData.productcount,payData.productprice, payData.partyid,payData.partyname,payData.amount,payData.zoneid,payData.callbackinfo,payData.ageRange); } else { UI_TipsWindow.InitAutoCloseDialog("正在拉取支付窗体,请稍等.", 5); Debug.Log("11sdkandroid pay"); SDKCall("paySDK", payData.GetSendCallString()); } } public override void CallOther(string funcName, params object[] param) { SDKCall("doAction",funcName, param); } public override void OpenUrl(string url) { SDKCall("openUrl", url); } public override void Restar() { SDKCall("restar"); } public override void FoceExit() { SDKCall("foceExit"); } } }