From df69044cce7d2bbce4881dc303cf5fbd2f0996c0 Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期三, 10 五月 2023 15:22:43 +0800
Subject: [PATCH] 0312 更新unity最新引擎activity

---
 SdkProject/library/src/main/java/com/secondworld/sdk/GameActivity.java |   46 ++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 44 insertions(+), 2 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 1bc106d..60f3663 100644
--- a/SdkProject/library/src/main/java/com/secondworld/sdk/GameActivity.java
+++ b/SdkProject/library/src/main/java/com/secondworld/sdk/GameActivity.java
@@ -1,15 +1,23 @@
 package com.secondworld.sdk;
 
+import android.content.Intent;
 import android.os.Bundle;
 import android.support.annotation.NonNull;
+import android.view.KeyEvent;
+import android.widget.FrameLayout;
+import android.widget.RelativeLayout;
 
 import com.secondworld.sdk.utils.LogUtil;
+import com.secondworld.sdk.utils.WebViewUtil;
 
 public class GameActivity extends UnityPlayerActivity {
 
     private static Class<? extends GameActivityProxy> proxyClass;
 
-    GameActivityProxy proxy;
+    private GameActivityProxy proxy;
+
+    private RelativeLayout webContainer;
+    private FrameLayout unityContainer;
 
     //娉ㄥ唽浠g悊绫�
     public static void registerProxy(Class<? extends GameActivityProxy> proxyClass) {
@@ -19,7 +27,13 @@
     @Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
-        LogUtil.d("GameActivity","鍚姩鐨勬槸GameActivity锛�");
+        LogUtil.d("GameActivity", "鍚姩鐨勬槸GameActivity锛�");
+        setContentView(R.layout.activity_main);
+        webContainer = findViewById(R.id.webContainer);
+        unityContainer = findViewById(R.id.unityContainer);
+        unityContainer.addView(mUnityPlayer);
+        WebViewUtil.I.init(this, webContainer);
+        //鍒濆鍖栨笭閬撲唬鐞嗙被
         try {
             if (proxyClass != null) {
                 proxy = proxyClass.newInstance();
@@ -37,6 +51,13 @@
         super.onStart();
         if (proxy != null)
             proxy.onStart();
+    }
+
+    @Override
+    protected void onRestart() {
+        super.onRestart();
+        if (proxy != null)
+            proxy.onRestart();
     }
 
     @Override
@@ -68,10 +89,31 @@
     }
 
     @Override
+    protected void onNewIntent(Intent intent) {
+        super.onNewIntent(intent);
+        if (proxy != null)
+            proxy.onNewIntent(intent);
+    }
+
+    @Override
+    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
+        super.onActivityResult(requestCode, resultCode, data);
+        if (proxy != null)
+            proxy.onActivityResult(requestCode, resultCode, data);
+    }
+
+    @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);
     }
 
+    @Override
+    public boolean onKeyDown(int keyCode, KeyEvent event) {
+        if (proxy == null)
+            return super.onKeyDown(keyCode, event);
+        boolean b = proxy.onKeyDown(keyCode, event);
+        return b ? b : super.onKeyDown(keyCode, event);
+    }
 }
\ No newline at end of file

--
Gitblit v1.8.0