From 0f720197c208158d13ba2bb7da49fdde4dceb1a7 Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期一, 25 七月 2022 11:45:28 +0800
Subject: [PATCH] 0312 权限申请

---
 SdkProject/plugins/quick/java/com/secondworld/sdk/QuickSdkMgr.java |   73 ++++++++++++++++++++++++++++--------
 1 files changed, 56 insertions(+), 17 deletions(-)

diff --git a/SdkProject/plugins/quick/java/com/secondworld/sdk/QuickSdkMgr.java b/SdkProject/plugins/quick/java/com/secondworld/sdk/QuickSdkMgr.java
index 73d075c..127419f 100644
--- a/SdkProject/plugins/quick/java/com/secondworld/sdk/QuickSdkMgr.java
+++ b/SdkProject/plugins/quick/java/com/secondworld/sdk/QuickSdkMgr.java
@@ -9,8 +9,8 @@
 import android.content.pm.PackageManager;
 import android.net.Uri;
 import android.provider.Settings;
-import androidx.core.app.ActivityCompat;
-import androidx.core.content.ContextCompat;
+import android.support.v4.app.ActivityCompat;
+import android.support.v4.content.ContextCompat;
 import android.widget.Toast;
 
 import com.quicksdk.BaseCallBack;
@@ -33,6 +33,7 @@
 import com.secondworld.sdk.utils.LogUtil;
 import com.secondworld.sdk.utils.RequestCode;
 import com.unity3d.player.UnityPlayer;
+import com.secondworld.sdk.PlatformDiff;
 
 import org.json.JSONException;
 import org.json.JSONObject;
@@ -43,7 +44,7 @@
 
     String productCode;
     String productKey;
-
+    public String channelID;
     int REQUEST_RECORD_PERMISSION_SETTING = 110;
 
     private boolean hasPermissions(Activity activity) {
@@ -61,16 +62,21 @@
                 ActivityCompat.requestPermissions(activity, new String[]{
                         Manifest.permission.READ_PHONE_STATE, Manifest.permission.WRITE_EXTERNAL_STORAGE}, RequestCode.QUICK);
             } else {
+                QuickSdkMgr.I.register(PlatformDiff.I.platformProductCode(), PlatformDiff.I.platformProductKey());
                 QuickSdkMgr.I.init(activity);
             }
         } catch (Exception e) {
-            QuickSdkMgr.I.init(activity);
+            //QuickSdkMgr.I.init(activity);
+            ActivityCompat.requestPermissions(activity, new String[]{
+                    Manifest.permission.READ_PHONE_STATE, Manifest.permission.WRITE_EXTERNAL_STORAGE}, RequestCode.QUICK);
         }
     }
 
     public void onRequestPermissionsResult(Activity activity, int requestCode, int[] grantResults) {
         if (requestCode != RequestCode.QUICK) return;
         if (hasPermissions(activity)) {
+            //鐢宠鎴愬姛
+            QuickSdkMgr.I.register(PlatformDiff.I.platformProductCode(), PlatformDiff.I.platformProductKey());
             QuickSdkMgr.I.init(activity);
             return;
         }
@@ -98,8 +104,8 @@
     }
 
     public void onActivityResult(Activity activity, int requestCode) {
-        if (requestCode == REQUEST_RECORD_PERMISSION_SETTING)
-            requestPermissions(activity);
+//        if (requestCode == REQUEST_RECORD_PERMISSION_SETTING)
+//            requestPermissions(activity);
     }
 
     public void init(Activity activity) {
@@ -114,17 +120,25 @@
                 if (GameActivityProxy.I.activity == null)
                     return;
                 if (hasPermissions(GameActivityProxy.I.activity)) {
-                    init(BtGameMain.I.activity);
-                    Toast.makeText(GameAppProxy.app, "姝e湪鍒濆鍖栦腑锛岃绋嶇瓑", Toast.LENGTH_LONG).show();
+                    //init(BtGameMain.I.activity);
+                    Toast.makeText(GameAppProxy.app, "寮傚父璇烽噸鍚父鎴�", Toast.LENGTH_LONG).show();
                 }
                 break;
             }
             case SUCCEED: {
-                User.getInstance().login(GameActivityProxy.I.activity);
+                //User.getInstance().login(GameActivityProxy.I.activity);
+                GameActivityProxy.I.activity.runOnUiThread(new Runnable()
+                {
+                    @Override
+                    public void run()
+                    {
+                        User.getInstance().login(GameActivityProxy.I.activity);
+                    }
+                });
                 break;
             }
             case LOADING: {
-                Toast.makeText(GameAppProxy.app, "姝e湪鍒濆鍖栦腑锛岃绋嶇瓑", Toast.LENGTH_LONG).show();
+                Toast.makeText(GameAppProxy.app, "姝e湪鍒濆鍖栦腑锛岃绋嶇瓑锛�", Toast.LENGTH_LONG).show();
                 break;
             }
         }
@@ -133,19 +147,44 @@
     public void loginOut() {
         if (GameActivityProxy.I.activity == null)
             return;
-        User.getInstance().logout(GameActivityProxy.I.activity);
+        //User.getInstance().logout(GameActivityProxy.I.activity);
+        GameActivityProxy.I.activity.runOnUiThread(new Runnable()
+        {
+            @Override
+            public void run()
+            {
+                User.getInstance().logout(GameActivityProxy.I.activity);
+            }
+        });
     }
 
     public void setGameRoleInfo(GameRoleInfo roleInfo, boolean createRole) {
         if (GameActivityProxy.I.activity == null)
             return;
-        User.getInstance().setGameRoleInfo(GameActivityProxy.I.activity, roleInfo, createRole);
+        //User.getInstance().setGameRoleInfo(GameActivityProxy.I.activity, roleInfo, createRole);
+
+        GameActivityProxy.I.activity.runOnUiThread(new Runnable()
+        {
+            @Override
+            public void run()
+            {
+                User.getInstance().setGameRoleInfo(GameActivityProxy.I.activity, roleInfo, createRole);
+            }
+        });
     }
 
     public void pay(OrderInfo orderInfo, GameRoleInfo roleInfo) {
         if (GameActivityProxy.I.activity == null)
             return;
-        Payment.getInstance().pay(GameActivityProxy.I.activity, orderInfo, roleInfo);
+        //Payment.getInstance().pay(GameActivityProxy.I.activity, orderInfo, roleInfo);
+        GameActivityProxy.I.activity.runOnUiThread(new Runnable()
+        {
+            @Override
+            public void run()
+            {
+                Payment.getInstance().pay(GameActivityProxy.I.activity, orderInfo, roleInfo);
+            }
+        });
     }
 
     public void verifyRealName() {
@@ -217,10 +256,10 @@
                 try {
                     args.clear();
                     JSONObject info = new JSONObject();
-                    String cid = com.quicksdk.Extend.getInstance().getExtrasConfig("cid");
-                    if (cid == null || cid.isEmpty())
-                        cid = com.quicksdk.Extend.getInstance().getChannelType() + "";
-                    String account = userInfo.getUID() + "@" + cid;
+                    channelID = com.quicksdk.Extend.getInstance().getExtrasConfig("channel");
+                    if (channelID == null || channelID.isEmpty())
+                        channelID = com.quicksdk.Extend.getInstance().getChannelType() + "";
+                    String account = userInfo.getUID() + "@" + channelID;
                     info.put("account", account);
                     info.put("userName", userInfo.getUID());
                     info.put("token", userInfo.getToken());

--
Gitblit v1.8.0