package com.secondworld.sdk.command; import android.app.AlertDialog; import com.secondworld.sdk.GameAppProxy; import com.secondworld.sdk.PlatformDiff; import com.secondworld.sdk.UnityMsgHandler; import com.secondworld.sdk.utils.CodeA2U; import com.secondworld.sdk.utils.CodeU2A; import com.secondworld.sdk.utils.DeviceUtil; import com.secondworld.sdk.utils.LogUtil; import com.unity3d.player.UnityPlayer; import org.json.JSONException; import org.json.JSONObject; import java.util.HashMap; import java.util.Map; /** * 游戏初始化 */ public class CmdInit implements ICommand { @Override public int getCode() { return CodeU2A.Init; } @Override public void process(JSONObject json) throws JSONException { GameAppProxy.appId = json.getString("appID"); long size = DeviceUtil.getTotalRAMSize() / 1024 / 1024; LogUtil.debug("CmdInit", "内存:" + size + " mb"); if (size < 1024) { LogUtil.w("CmdInit", "检测设备内存不满足运行程序标准,内存:" + size + " mb"); AlertDialog.Builder _builder = new AlertDialog.Builder(UnityPlayer.currentActivity); _builder.setTitle("警告"); _builder.setCancelable(false); _builder.setMessage("您的设备运行内存不满足要求,无法正常运行游戏"); _builder.setPositiveButton("确定", (dialogInterface, i) -> { GameAppProxy.appExit(); }); _builder.show(); return; } //发送设备信息 Map _msgStruct = new HashMap<>(); _msgStruct.put("userAgent", System.getProperty("http.agent")); _msgStruct.put("mac", DeviceUtil.getLocalMac()); _msgStruct.put("imei", ""); _msgStruct.put("android_id", DeviceUtil.getAndroidId()); _msgStruct.put("unique_id", DeviceUtil.getUniqueID()); _msgStruct.put("memoryTotal", size); UnityMsgHandler.sendMessageToUnity(CodeA2U.DeviceInfo,_msgStruct); //通知sdk初始化完成 _msgStruct.clear(); _msgStruct.put("channelPlatform", PlatformDiff.I.platformName()); UnityMsgHandler.sendMessageToUnity(CodeA2U.SdkInitComplete,_msgStruct); LogUtil.debug("CmdInit", "Sdk初始化完成"); } }