From 491f3b6161c85c38b89c3e476c543b56d9c155ca Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期五, 09 十月 2026 21:49:32 +0800
Subject: [PATCH] 0312 修复海外代码插入问题

---
 Assets/Editor/XCodeProjectMod.cs |   26 ++++++++++++++++++++------
 1 files changed, 20 insertions(+), 6 deletions(-)

diff --git a/Assets/Editor/XCodeProjectMod.cs b/Assets/Editor/XCodeProjectMod.cs
index 4ecf93d..841b969 100644
--- a/Assets/Editor/XCodeProjectMod.cs
+++ b/Assets/Editor/XCodeProjectMod.cs
@@ -366,18 +366,32 @@
         _xclass.WriteBelow("@property (readonly, copy, nonatomic) DisplayConnection*    mainDisplay;",
                            "@property (readonly, copy, nonatomic) FimpfunBridge*  fimpfunBridge;");
 
-        // 3.1 閫傞厤娆х洘鏀跨瓥锛氬湪 viewDidAppear 涓皟鐢� adaptingEUGDPR锛堟枃妗h姹傦級
-        // UnityViewControllerBase.mm 鍦ㄨ緝鏂� Unity 鐗堟湰锛堝 2022.3+锛変腑鍙兘涓嶅瓨鍦�
+        // 3.1 閫傞厤娆х洘鏀跨瓥锛氬湪 viewDidAppear 涓皟鐢� adaptingEUGDPR锛堟枃妗� 3.1锛�
+        // 娉ㄦ剰锛�
+        // 1. UnityViewControllerBase.mm 鑷韩宸叉湁 viewDidAppear 瀹炵幇锛屼笉鑳藉啀杩藉姞鏂版柟娉曪紝
+        //    鍚﹀垯鎶� Duplicate declaration of method 'viewDidAppear'锛�
+        //    杩欓噷鎶婅皟鐢ㄦ彃鍏ュ凡鏈夋柟娉曠殑 [super viewDidAppear...] 涔嬪悗銆�
+        // 2. FimpfunBridge 鍦� UnityAppController.h 涓粎 @class 鍓嶅悜澹版槑锛�
+        //    鏈枃浠惰皟鐢ㄤ細鎶� forward declaration 缂栬瘧閿欒锛涙寜鏂囨。鐩存帴璋� SDK 鍗曚緥銆�
+        // 3. 骞傜瓑锛欰ppend 鏋勫缓鎴栧娆℃墦鍖呮椂璺宠繃宸叉敞鍏ョ殑鏂囦欢銆�
         string viewControllerPath = projectPath + "/Classes/UI/UnityViewControllerBase.mm";
         if (System.IO.File.Exists(viewControllerPath))
         {
-            var _viewController = new XClass(viewControllerPath);
-            _viewController.WriteBelow("@implementation UnityViewControllerBase",
-                "\n- (void)viewDidAppear:(BOOL)animated {\n    [super viewDidAppear:animated];\n    [GetAppController().fimpfunBridge viewDidAppear];\n}\n");
+            string vcContent = File.ReadAllText(viewControllerPath);
+            if (!vcContent.Contains("adaptingEUGDPR"))
+            {
+                File.WriteAllText(viewControllerPath, "#import \"fimpfunSDK.h\"\n" + vcContent);
+                if (!InsertBelowPattern(viewControllerPath, @"\[super viewDidAppear[^\n]*",
+                                        "    [[FIMPPlatformService initFIMPPlatformService] adaptingEUGDPR];",
+                                        "adaptingEUGDPR"))
+                {
+                    Debug.LogError("[XCodeProjectMod] 鏈壘鍒� [super viewDidAppear]锛宎daptingEUGDPR 娉ㄥ叆澶辫触: " + viewControllerPath);
+                }
+            }
         }
         else
         {
-            Debug.LogError("[XCodeProjectMod] UnityViewControllerBase.mm 鏂囦欢涓嶅瓨鍦紝璺宠繃 viewDidAppear 娉ㄥ叆銆傛 Unity 鐗堟湰鍙兘宸茬Щ闄よ鏂囦欢銆�");
+            Debug.LogError("[XCodeProjectMod] UnityViewControllerBase.mm 鏂囦欢涓嶅瓨鍦紝璺宠繃 adaptingEUGDPR 娉ㄥ叆銆傛 Unity 鐗堟湰鍙兘宸茬Щ闄よ鏂囦欢銆�");
         }
     }
 

--
Gitblit v1.8.0