package com.secondworld.sdk; 
 | 
  
 | 
import android.app.Activity; 
 | 
import android.widget.Toast; 
 | 
  
 | 
import com.cy.yyjia.sdk.center.SdkManager; 
 | 
import com.cy.yyjia.sdk.listener.ChangePasswordListener; 
 | 
import com.cy.yyjia.sdk.listener.ExitGameListener; 
 | 
import com.cy.yyjia.sdk.listener.InitListener; 
 | 
import com.cy.yyjia.sdk.listener.LoginListener; 
 | 
import com.cy.yyjia.sdk.listener.LogoutListener; 
 | 
import com.cy.yyjia.sdk.listener.PayListener; 
 | 
import com.secondworld.sdk.utils.CodeA2U; 
 | 
import com.secondworld.sdk.utils.LogUtil; 
 | 
  
 | 
import org.json.JSONException; 
 | 
import org.json.JSONObject; 
 | 
  
 | 
import java.util.HashMap; 
 | 
  
 | 
public class MySdkMgr extends PlatformSdkMgr { 
 | 
  
 | 
    public static MySdkMgr I = new MySdkMgr(); 
 | 
  
 | 
    public void init(Activity activity) { 
 | 
        sdkInitState = SdkInitState.LOADING; 
 | 
        SdkManager.getInstance().init(activity); 
 | 
    } 
 | 
  
 | 
    public void login() { 
 | 
        switch (sdkInitState) { 
 | 
            case FAILED: 
 | 
            case UNKNOWN: { 
 | 
                if (GTGameMain.I.activity != null) 
 | 
                    init(GTGameMain.I.activity); 
 | 
                Toast.makeText(GameApp.I, "正在初始化中,请稍等", Toast.LENGTH_LONG).show(); 
 | 
                break; 
 | 
            } 
 | 
            case SUCCEED: { 
 | 
                SdkManager.getInstance().login(); 
 | 
                break; 
 | 
            } 
 | 
            case LOADING: { 
 | 
                Toast.makeText(GameApp.I, "正在初始化中,请稍等", Toast.LENGTH_LONG).show(); 
 | 
                break; 
 | 
            } 
 | 
        } 
 | 
    } 
 | 
  
 | 
    public void setListener() { 
 | 
        args = new HashMap<>(); 
 | 
        // 初始化监听 
 | 
        SdkManager.getInstance().setInitListener(new InitListener() { 
 | 
            @Override 
 | 
            public void onSuccess() { 
 | 
                sdkInitState = SdkInitState.SUCCEED; 
 | 
                LogUtil.debug("SdkManager", "初始化成功"); 
 | 
                args.clear(); 
 | 
                args.put("code", CodeA2U.PlatformInitOk); 
 | 
                UnityMsgHandler.sendMessageToUnity(args); 
 | 
            } 
 | 
  
 | 
            @Override 
 | 
            public void onError(String msg) { 
 | 
                sdkInitState = SdkInitState.FAILED; 
 | 
                LogUtil.e("SdkManager", "初始化失败:" + msg); 
 | 
                args.clear(); 
 | 
                args.put("code", CodeA2U.PlatformInitFail); 
 | 
                UnityMsgHandler.sendMessageToUnity(args); 
 | 
            } 
 | 
        }); 
 | 
  
 | 
        // 登录监听 
 | 
        SdkManager.getInstance().setLoginListener(new LoginListener() { 
 | 
            @Override 
 | 
            public void onSuccess() { 
 | 
                LogUtil.e("SdkManager", "登录成功"); 
 | 
                try { 
 | 
                    args.clear(); 
 | 
                    JSONObject info = new JSONObject(); 
 | 
                    info.put("account", SdkManager.getInstance().getUid()); 
 | 
                    info.put("game_id", SdkManager.getInstance().getGameId()); 
 | 
                    info.put("session_id", SdkManager.getInstance().getSessionId()); 
 | 
  
 | 
                    args.put("code", CodeA2U.PlatformLoginOk); 
 | 
                    args.put("info", info); 
 | 
                    UnityMsgHandler.sendMessageToUnity(args); 
 | 
                } catch (JSONException e) { 
 | 
                    e.printStackTrace(); 
 | 
                    LogUtil.e("SdkManager 登录成功", e); 
 | 
                } 
 | 
            } 
 | 
  
 | 
            @Override 
 | 
            public void onError(String s) { 
 | 
                LogUtil.e("SdkManager", "登录失败:" + s); 
 | 
                args.clear(); 
 | 
                args.put("code", CodeA2U.PlatformLoginFail); 
 | 
                UnityMsgHandler.sendMessageToUnity(args); 
 | 
            } 
 | 
  
 | 
            @Override 
 | 
            public void onCancel() { 
 | 
                args.clear(); 
 | 
                args.put("code", CodeA2U.PlatformLoginFail); 
 | 
                UnityMsgHandler.sendMessageToUnity(args); 
 | 
            } 
 | 
        }); 
 | 
  
 | 
        //支付监听 
 | 
        SdkManager.getInstance().setPayListener(new PayListener() { 
 | 
            @Override 
 | 
            public void onSuccess(String status, String orderId) { 
 | 
                LogUtil.debug("SdkManager", "onSuccess status:" + status + ",orderId:" + orderId); 
 | 
            } 
 | 
  
 | 
            @Override 
 | 
            public void onError() { 
 | 
                LogUtil.e("SdkManager", "onError"); 
 | 
            } 
 | 
  
 | 
            @Override 
 | 
            public void onCancel() { 
 | 
                LogUtil.debug("SdkManager", "onCancel"); 
 | 
            } 
 | 
        }); 
 | 
  
 | 
  
 | 
        // 账号注销监听 
 | 
        SdkManager.getInstance().setLogoutListener(new LogoutListener() { 
 | 
  
 | 
            @Override 
 | 
            public void onSuccess() { 
 | 
                //注销成功,需要把游戏切换回登陆前的场景,并重新弹出登录框等操作 
 | 
                args.clear(); 
 | 
                args.put("code", CodeA2U.PlatformLogoutOk); 
 | 
                UnityMsgHandler.sendMessageToUnity(args); 
 | 
            } 
 | 
  
 | 
            @Override 
 | 
            public void onError() { 
 | 
            } 
 | 
  
 | 
            @Override 
 | 
            public void onCancel() { 
 | 
            } 
 | 
        }); 
 | 
  
 | 
        //游戏退出监听 
 | 
        SdkManager.getInstance().setExitGameListener(new ExitGameListener() { 
 | 
            @Override 
 | 
            public void onCancel() { 
 | 
                LogUtil.debug("游戏退出监听", "onCancel"); 
 | 
            } 
 | 
  
 | 
            @Override 
 | 
            public void onSuccess() { 
 | 
                LogUtil.debug("游戏退出监听", "onSuccess"); 
 | 
            } 
 | 
        }); 
 | 
  
 | 
        //修改密码监听 
 | 
        SdkManager.getInstance().setChangePasswordListener(new ChangePasswordListener() { 
 | 
            @Override 
 | 
            public void onError() { 
 | 
            } 
 | 
  
 | 
            @Override 
 | 
            public void onSuccess() { 
 | 
            } 
 | 
        }); 
 | 
  
 | 
        //设置dubug模式 
 | 
        SdkManager.getInstance().setDebug(BuildConfig.DEBUG); 
 | 
    } 
 | 
  
 | 
} 
 |