From 796dfdb05c199f966152b17bebb5ccbd1d4d0c85 Mon Sep 17 00:00:00 2001
From: lwb <q3213421wrwqr>
Date: 星期五, 27 十一月 2020 14:11:25 +0800
Subject: [PATCH] 9527.加入港台sdk渠道

---
 SdkProject/library/src/main/java/com/secondworld/sdk/GameActivity.java |   71 ++++++++++++++++++++++++++++++-----
 1 files changed, 61 insertions(+), 10 deletions(-)

diff --git a/SdkProject/library/src/main/java/com/secondworld/sdk/GameActivity.java b/SdkProject/library/src/main/java/com/secondworld/sdk/GameActivity.java
index 669f692..1bc106d 100644
--- a/SdkProject/library/src/main/java/com/secondworld/sdk/GameActivity.java
+++ b/SdkProject/library/src/main/java/com/secondworld/sdk/GameActivity.java
@@ -1,26 +1,77 @@
 package com.secondworld.sdk;
 
 import android.os.Bundle;
-import android.view.View;
-import android.widget.FrameLayout;
+import android.support.annotation.NonNull;
+
+import com.secondworld.sdk.utils.LogUtil;
 
 public class GameActivity extends UnityPlayerActivity {
+
+    private static Class<? extends GameActivityProxy> proxyClass;
+
+    GameActivityProxy proxy;
+
+    //娉ㄥ唽浠g悊绫�
+    public static void registerProxy(Class<? extends GameActivityProxy> proxyClass) {
+        GameActivity.proxyClass = proxyClass;
+    }
 
     @Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
-//        setContentView(R.layout.activity_main);
-        checkPermission();
-//        addUnityView();
+        LogUtil.d("GameActivity","鍚姩鐨勬槸GameActivity锛�");
+        try {
+            if (proxyClass != null) {
+                proxy = proxyClass.newInstance();
+                proxy.onCreate(this);
+            } else
+                LogUtil.w("GameActivity", "proxyClass 涓嶅瓨鍦�");
+        } catch (IllegalAccessException | InstantiationException e) {
+            e.printStackTrace();
+            LogUtil.e("GameActivity", e);
+        }
     }
 
-    private void checkPermission() {
+    @Override
+    protected void onStart() {
+        super.onStart();
+        if (proxy != null)
+            proxy.onStart();
     }
 
-    protected void addUnityView() {
-        FrameLayout _frameLayout = findViewById(R.id.unity_view);
-        View unityView = mUnityPlayer.getView();
-        _frameLayout.addView(unityView);
+    @Override
+    protected void onResume() {
+        super.onResume();
+        if (proxy != null)
+            proxy.onResume();
+    }
+
+    @Override
+    protected void onPause() {
+        super.onPause();
+        if (proxy != null)
+            proxy.onPause();
+    }
+
+    @Override
+    protected void onStop() {
+        super.onStop();
+        if (proxy != null)
+            proxy.onStop();
+    }
+
+    @Override
+    protected void onDestroy() {
+        super.onDestroy();
+        if (proxy != null)
+            proxy.onDestroy();
+    }
+
+    @Override
+    public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
+        super.onRequestPermissionsResult(requestCode, permissions, grantResults);
+        if (proxy != null)
+            proxy.onRequestPermissionsResult(requestCode, permissions, grantResults);
     }
 
 }
\ No newline at end of file

--
Gitblit v1.8.0