리액트 네이티브 카카오맵 AVD에서 화면이 뜨지 않습니다

[FAQ] 지도/로컬 API 문의 전 꼭 읽어 주세요.

리액트네이티브로 개발중이고 현재 Android 14.0 UpsideDownCake에 픽셀은 1080*1920 420dpi입니다.
아래와 코드와 같이 웹뷰로 카카오지도 불러오려고 했는데, 흰 화면만 뜹니다.


import React from ‘react’;
import {View, StyleSheet} from ‘react-native’;
import WebView from ‘react-native-webview’;

const MapComponent = () => {
console.log(‘MapComponent start’);
const injectedJavaScript = alert("JavaScript 실행됨"); // JavaScript 실행 여부 확인용 console.log("JavaScript_Start"); (function waitForKakao() { var container = document.getElementById('map'); if (!container) { console.error("Map container not found. Retrying..."); setTimeout(waitForKakao, 2000); // 2초 후 다시 확인 return; } if (window.kakao && window.kakao.maps) { console.log("Kakao Maps SDK 로드 완료"); var options = { center: new kakao.maps.LatLng(37.5665, 126.9780), level: 3 }; var map = new kakao.maps.Map(container, options); console.log("지도 초기화 완료"); } else { console.log("Kakao Maps SDK 로드 대기 중..."); setTimeout(waitForKakao, 2000); // 0.1초 후 다시 확인 } })(); ;

return (

<WebView
source={{
html: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>카카오 지도</title> <script type="text/javascript" src="https://dapi.kakao.com/v2/maps/sdk.js?appkey=67b40bba601a469f72b360b25142d074&libraries=services,clusterer,drawing"></script> </head> <body> <div id="map" style="width:100%;height:100%;"></div> </body> </html> ,
}}
injectedJavaScript={injectedJavaScript}
javaScriptEnabled={true}
domStorageEnabled={true}
cacheEnabled={false} // 캐시 비활성화
cacheMode=“LOAD_NO_CACHE” // 캐시 모드 설정
onMessage={event => {
const message = JSON.parse(event.nativeEvent.data);
if (message.error) {
console.warn('Map loading error: ', message.error);
}
}}
onError={syntheticEvent => {
const {nativeEvent} = syntheticEvent;
console.warn('WebView error: ', nativeEvent);
}}
style={styles.map}
/>

);
};

const styles = StyleSheet.create({
container: {flex: 1},
map: {width: ‘100%’, height: ‘100%’},
});

export default MapComponent;


화면은 위와 같이 흰 화면만 뜹니다.

개발자 도구에서는 지도 초기화 완료라는 로그가 찍히는걸로 봐서는 제대로 호출은 한 것 같은데 화면 자체가 나오지 않는 이유가 무엇인지 궁금합니다.

먼저 html이 HTTPS 환경과 로컬 PC에서 동작이 되는지 확인 부탁드립니다.
로컬에서 정상 동작이된다면 안드로이드 웹뷰에서 지도 타일이미지를 호출하고 있는지 확인해주시고,
로드가 되지 않다면 안드로이드 설정(인터넷 권한, 보안 설정 등)이나 웹뷰에서 호출하는 도메인(보통 http://ip:port 주소, 로컬 html 파일이면 file:// 을 등록)을 확인해주세요.
그리고 동적으로 지도 크기가 변경된다면 map.relayout API를 호출해서 확인해주세요.
https://apis.map.kakao.com/web/documentation/#Map_relayout

웹플랫폼 등록 없이 안드로이드 플랫폼만 등록을 한 상태인데 무방한가요??

로컬에서 테스트하려면 웹플랫폼 등록이 되어있어야하지 않나 싶어서요!

코드에서 사용중인 SDK는 JS SDK입니다.
JS SDK를 사용할 경우 Web 플랫폼 > 사이트 도메인에 호출 주소 또는 file:// 프로토콜을 등록해서 사용해주셔야하며
웹뷰에서는 지도를 표시할 별도 페이지를 구성하고 로드하는 방식으로 사용해 주세요.

안드로이드 SDK로 사용하실 경우 아래 가이드 참고하셔서 적용해 주시면 됩니다.
https://apis.map.kakao.com/android_v2/docs/getting-started/quickstart/