deeplink launchparams 정보 추출

This commit is contained in:
opacity@t-win.kr
2025-08-27 17:59:25 +09:00
parent 94dec40839
commit 7f79cf7ad5

View File

@@ -63,6 +63,7 @@ import { panel_names } from "../../utils/Config";
import {
$L,
getErrorMessage,
getLaunchParams,
getSpottableDescendants,
} from "../../utils/helperMethods";
import { SpotlightIds } from "../../utils/SpotlightIds";
@@ -673,6 +674,7 @@ export default function MainView({ className, initService }) {
}, [dispatch, popupData, activePopup, topPanel?.name]);
// 딥링크 확인 테스트
const launchParams = getLaunchParams();
const deepLinkInfo = useSelector((state) => state.common.deepLinkInfo);
const secondLayerInfo = useSelector((state) => state.common.secondLayerInfo);
const appStatus = useSelector((state) => state.common.appStatus);
@@ -891,66 +893,11 @@ export default function MainView({ className, initService }) {
<div style={{ color: "#ffff00", marginBottom: "0px" }}>
📱 Launch Params:
</div>
{(() => {
let raw = window.PalmSystem?.launchParams || "{}";
let parsed = JSON.parse(raw);
let containerFlag = parsed["x-webos-app-container-launch"];
let finalParams =
containerFlag === true ? parsed.details : parsed;
let contentTarget = finalParams?.contentTarget || "N/A";
return (
<>
<div style={{ marginBottom: "1px" }}>
<div style={{ color: "#ffff00" }}>
raw (최초 파라미터):
</div>
<div
style={{
fontSize: "10px",
color: "#cccccc",
marginLeft: "5px",
whiteSpace: "pre-wrap",
wordBreak: "break-all",
}}
>
{raw}
</div>
</div>
<div style={{ marginBottom: "1px" }}>
<div style={{ color: "#ffff00" }}>finalParams:</div>
<div
style={{
fontSize: "10px",
color: "#cccccc",
marginLeft: "5px",
whiteSpace: "pre-wrap",
wordBreak: "break-all",
}}
>
{JSON.stringify(finalParams, null, 2)}
</div>
</div>
<div>
<div>
contentTarget:{" "}
<span
style={{
color:
contentTarget && contentTarget !== "N/A"
? "#00ff00"
: "#ff6666",
}}
>
{contentTarget || "MISSING"}
</span>
</div>
</div>
</>
);
})()}
{launchParams && launchParams.contentTarget ? (
<div>{launchParams}</div>
) : (
<div>N/A</div>
)}
</div>
</div>
</div>