Revert "debug 의 try 문제거"

This reverts commit 94dec40839.
This commit is contained in:
opacity@t-win.kr
2025-08-27 18:25:00 +09:00
parent 42cc86e0d4
commit 33f8171295

View File

@@ -892,15 +892,85 @@ export default function MainView({ className, initService }) {
📱 Launch Params: 📱 Launch Params:
</div> </div>
{(() => { {(() => {
let raw = window.PalmSystem?.launchParams || "{}"; try {
let parsed = JSON.parse(raw); // 항상 모든 정보를 표시
let containerFlag = parsed["x-webos-app-container-launch"]; const windowExists = typeof window === "object";
let finalParams = const palmSystemExists = windowExists && !!window.PalmSystem;
const launchParamsExists =
palmSystemExists &&
window.PalmSystem.launchParams !== undefined;
const launchParamsValue = palmSystemExists
? window.PalmSystem.launchParams
: null;
const launchParamsType = palmSystemExists
? typeof window.PalmSystem.launchParams
: "N/A";
let raw = "N/A";
let parsed = {};
let containerFlag = "N/A";
let finalParams = {};
let contentTarget = "N/A";
let parseError = null;
// TV에서 launch params가 빈 문자열이거나 null일 수 있음
if (launchParamsExists && launchParamsValue) {
try {
raw = window.PalmSystem.launchParams;
parsed = JSON.parse(raw);
containerFlag = parsed["x-webos-app-container-launch"];
finalParams =
containerFlag === true ? parsed.details : parsed; containerFlag === true ? parsed.details : parsed;
let contentTarget = finalParams?.contentTarget || "N/A"; contentTarget = finalParams.contentTarget;
} catch (e) {
parseError = e.message;
}
}
// Redux에서 가져온 contentTarget (비교용)
const reduxContentTarget = deepLinkInfo.contentTarget;
// getLaunchParams() 함수 결과 확인
let getLaunchParamsResult = {};
try {
// helperMethods.js의 getLaunchParams 함수 직접 호출
if (
typeof window === "object" &&
window.PalmSystem &&
window.PalmSystem.launchParams
) {
getLaunchParamsResult = JSON.parse(
window.PalmSystem.launchParams
);
if (
getLaunchParamsResult[
"x-webos-app-container-launch"
] === true
) {
getLaunchParamsResult = getLaunchParamsResult.details;
}
} else {
// localLaunchParams가 반환될 것임
getLaunchParamsResult = {
source: "localLaunchParams (fallback)",
};
}
} catch (e) {
getLaunchParamsResult = { error: e.message };
}
return ( return (
<> <>
<div style={{ marginBottom: "1px" }}>
<span
style={{
color: palmSystemExists ? "#00ff00" : "#ff6666",
}}
>
webOS환경: {palmSystemExists ? "✓" : "✗"}
</span>
</div>
<div style={{ marginBottom: "1px" }}> <div style={{ marginBottom: "1px" }}>
<div style={{ color: "#ffff00" }}> <div style={{ color: "#ffff00" }}>
raw (최초 파라미터): raw (최초 파라미터):
@@ -918,6 +988,25 @@ export default function MainView({ className, initService }) {
</div> </div>
</div> </div>
<div style={{ marginBottom: "1px" }}>
containerFlag: {String(containerFlag)}
</div>
<div style={{ marginBottom: "1px" }}>
<div style={{ color: "#ffff00" }}>initialParse:</div>
<div
style={{
fontSize: "10px",
color: "#cccccc",
marginLeft: "5px",
whiteSpace: "pre-wrap",
wordBreak: "break-all",
}}
>
{JSON.stringify(parsed, null, 2)}
</div>
</div>
<div style={{ marginBottom: "1px" }}> <div style={{ marginBottom: "1px" }}>
<div style={{ color: "#ffff00" }}>finalParams:</div> <div style={{ color: "#ffff00" }}>finalParams:</div>
<div <div
@@ -935,7 +1024,7 @@ export default function MainView({ className, initService }) {
<div> <div>
<div> <div>
contentTarget:{" "} launch contentTarget:{" "}
<span <span
style={{ style={{
color: color:
@@ -947,9 +1036,46 @@ export default function MainView({ className, initService }) {
{contentTarget || "MISSING"} {contentTarget || "MISSING"}
</span> </span>
</div> </div>
<div>
redux contentTarget:{" "}
<span
style={{
color: reduxContentTarget ? "#00ff00" : "#ff6666",
}}
>
{reduxContentTarget || "MISSING"}
</span>
</div> </div>
<div style={{ marginTop: "2px" }}>
<div style={{ color: "#ffff00" }}>
getLaunchParams() 결과:
</div>
<div
style={{
fontSize: "10px",
color: "#cccccc",
marginLeft: "5px",
whiteSpace: "pre-wrap",
wordBreak: "break-all",
}}
>
{JSON.stringify(getLaunchParamsResult, null, 2)}
</div>
</div>
</div>
{parseError && (
<div style={{ color: "#ff6666", marginTop: "2px" }}>
Parse Error: {parseError}
</div>
)}
</> </>
); );
} catch (e) {
return (
<div style={{ color: "#ff6666" }}>Error: {e.message}</div>
);
}
})()} })()}
</div> </div>
</div> </div>