isIosWebView & isAndWebView
export const isIOSWebView = /(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/i.test(
getUA,
);
export const isAndWebView = !!window.binder;
bridgeOpenBrowser - 외부화면 이동
export const bridgeOpenBrowser = (url: string): void => {
try {
if (isIOSWebView) {
webkit.messageHandlers.openBrowser.postMessage({
url: url, // 이동할 경로
});
} else if (isAndWebView) {
window.binder?.openBrowser(url);
} else {
window.open(url);
}
} catch (e) {
console.log('error bridge openBrowser');
}
};
bridgeOpenAppSchemeStore - 앱스키마로 스토어로 이동
export const bridgeOpenAppSchemeStore = () => {
try {
if (isIOSWebView) {
//iOS는 스키마가 없어서 브라우저로 열기
const update_url = 'https://itunes.apple.com/app/어쩌고';
bridgeOpenBrowser(update_url);
} else if (isAndWebView) {
//스키마, 패키지명
window.binder?.openAppScheme(
'market://details?id=com.어쩌고.lmscp',
'com.어쩌고.lmscp',
);
}
} catch (e) {
console.log('error bridge restart');
}
};
'WEB&APP' 카테고리의 다른 글
Intent 스킴 (0) | 2024.11.14 |
---|---|
[iOS] 앱 간 이동, 외부 앱 실행 방법 (0) | 2024.11.13 |
[javaScript] 화면 밝기 조절 (0) | 2024.11.11 |