From 2703b7d519c350bd448749eae5a87e2bf0040ae3 Mon Sep 17 00:00:00 2001 From: bananajeong <73640737+Najeong-Kim@users.noreply.github.com> Date: Tue, 5 Nov 2024 21:56:36 +0900 Subject: [PATCH] fix: update app bridge --- src/shared/lib/postAppMessage.ts | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/src/shared/lib/postAppMessage.ts b/src/shared/lib/postAppMessage.ts index 616b458..7251ff5 100644 --- a/src/shared/lib/postAppMessage.ts +++ b/src/shared/lib/postAppMessage.ts @@ -1,12 +1,12 @@ declare global { interface Window { - BRIDGE: { - sendMessage: (message: string) => void; + Android: { + showToast: (message: string) => void; }; webkit: { messageHandlers: { weski: { - showToast: (message: string) => void; + postMessage: ({ method, message }: { method: "showToast", message: string }) => void; }; }; }; @@ -14,18 +14,20 @@ declare global { } const postAppMessage = (message: string) => { - const userAgent = navigator.userAgent; - const android = userAgent.match(/Android/i); - const iphone = userAgent.match(/iPhone/i); - + const userAgent = navigator.userAgent.toLowerCase(); + const android = userAgent.match(/android/i); + const iphone = userAgent.match(/iphone/i); + if (android !== null) { console.log("Android"); - return window.BRIDGE.sendMessage(message); - + return window.Android.showToast(message); } else if (iphone !== null) { console.log("iOS"); - return window.webkit.messageHandlers.weski.showToast(message); - + if (window.webkit.messageHandlers.weski) { + window.webkit.messageHandlers.weski.postMessage({ method: "showToast", message: message }); + } else { + console.error("Weski bridge is not available."); + } } else { return window.opener.postMessage(message); }