From 2635d0e79d8b2c22ea2e225051c78e1b7b4768f3 Mon Sep 17 00:00:00 2001 From: "opacity@t-win.kr" Date: Wed, 27 Aug 2025 16:43:40 +0900 Subject: [PATCH] =?UTF-8?q?deeplink=20debug=20=EC=9E=AC=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/views/MainView/MainView.jsx | 254 ++++++++---------- 1 file changed, 107 insertions(+), 147 deletions(-) diff --git a/com.twin.app.shoptime/src/views/MainView/MainView.jsx b/com.twin.app.shoptime/src/views/MainView/MainView.jsx index e9d6d522..e46d8383 100644 --- a/com.twin.app.shoptime/src/views/MainView/MainView.jsx +++ b/com.twin.app.shoptime/src/views/MainView/MainView.jsx @@ -835,13 +835,13 @@ export default function MainView({ className, initService }) { left: "0", bottom: "0", color: "#fff", - fontSize: "11px", + fontSize: "12px", opacity: ".9", zIndex: "999", backgroundColor: "rgba(0,0,0,0.7)", - padding: "8px", - width: "700px", - height: "550px", + padding: "6px", + width: "800px", + height: "700px", borderRadius: "5px", fontFamily: "monospace", overflow: "hidden", @@ -853,66 +853,30 @@ export default function MainView({ className, initService }) {
πŸ”— Deep Link Debug Info
-
+
{/* Left Column */} -
- {/* Current State */} -
-
- πŸ“Š Current: -
-
- isDeepLink:{" "} - - {deepLinkInfo.isDeepLink ? "βœ“" : "βœ—"} - -
-
- contentTarget:{" "} - - {deepLinkInfo.contentTarget || "MISSING"} - -
-
- panels: {panels.length}, top:{" "} - {panels.length > 0 ? panels[panels.length - 1].name : "none"} -
-
- +
{/* App Status */} -
-
+
+
πŸ“± System:
webOS: {appStatus.webOSVersion || "unknown"}
-
- deviceId:{" "} - {appStatus.deviceId - ? appStatus.deviceId.substring(0, 8) + "..." - : "unknown"} -
+
deviceId: {appStatus.deviceId || "unknown"}
server: {appStatus.serverHOST || "unknown"}
{/* Redux State */}
-
+
πŸͺ Redux:
deepLink: {JSON.stringify(deepLinkInfo)}
@@ -921,94 +885,120 @@ export default function MainView({ className, initService }) {
{/* Right Column */} -
+
{/* Launch Params */} -
-
+
+
πŸ“± Launch Params:
{(() => { try { - if ( - !( - typeof window === "object" && - window.PalmSystem && - window.PalmSystem.launchParams - ) - ) { - return ( -
- No webOS environment -
- ); - } + // 항상 λͺ¨λ“  정보λ₯Ό ν‘œμ‹œ + const hasWebOS = + typeof window === "object" && + window.PalmSystem && + window.PalmSystem.launchParams; - const raw = window.PalmSystem.launchParams; - const parsed = JSON.parse(raw); - const containerFlag = parsed["x-webos-app-container-launch"]; - const finalParams = - containerFlag === true ? parsed.details : parsed; - const contentTarget = finalParams.contentTarget; + let raw = "N/A"; + let parsed = {}; + let containerFlag = "N/A"; + let finalParams = {}; + let contentTarget = "N/A"; + let parseError = null; + + if (hasWebOS) { + try { + raw = window.PalmSystem.launchParams; + parsed = JSON.parse(raw); + containerFlag = parsed["x-webos-app-container-launch"]; + finalParams = + containerFlag === true ? parsed.details : parsed; + contentTarget = finalParams.contentTarget; + } catch (e) { + parseError = e.message; + } + } return ( <> -
raw: {raw.substring(0, 50)}...
-
containerFlag: {String(containerFlag)}
+
+ + webOSν™˜κ²½: {hasWebOS ? "βœ“" : "βœ—"} + +
+ +
+
+ raw (졜초 νŒŒλΌλ―Έν„°): +
+
+ {raw} +
+
+ +
+ containerFlag: {String(containerFlag)} +
+ +
+
initialParse:
+
+ {JSON.stringify(parsed, null, 2)} +
+
+ +
+
finalParams:
+
+ {JSON.stringify(finalParams, null, 2)} +
+
+
contentTarget:{" "} {contentTarget || "MISSING"}
- - ); - } catch (e) { - return ( -
Error: {e.message}
- ); - } - })()} -
- {/* Real-time Check */} -
-
- πŸ”„ Real-time: -
- {(() => { - try { - let currentParams = {}; - if ( - typeof window === "object" && - window.PalmSystem && - window.PalmSystem.launchParams - ) { - currentParams = JSON.parse(window.PalmSystem.launchParams); - if ( - currentParams["x-webos-app-container-launch"] === true - ) { - currentParams = currentParams.details; - } - } - return ( - <> -
time: {new Date().toLocaleTimeString()}
-
- current:{" "} - - {currentParams.contentTarget || "MISSING"} - -
+ {parseError && ( +
+ Parse Error: {parseError} +
+ )} ); } catch (e) { @@ -1020,36 +1010,6 @@ export default function MainView({ className, initService }) {
- - {/* Parsed Deep Link */} - {deepLinkInfo.contentTarget && ( -
-
- πŸ” Parsed: -
- {(() => { - const tokens = deepLinkInfo.contentTarget.split("_"); - if (tokens[0] === "V2" || tokens[0] === "V3") { - return ( - <> -
- Version: {tokens[0]}, Code: {tokens[1]}, Name: {tokens[2]} - , Type: {tokens[3]} -
- {tokens.length > 4 && ( -
Extra: {tokens.slice(4).join("_")}
- )} - - ); - } - return ( -
❌ Not V2/V3 format
- ); - })()} -
- )}
);