๊ฐ์ธ ๋ฒ์ ์์ ์
๋ค์ด๋ฒ๋งต์ ๋ฆฌ์กํธ ๋ค์ดํฐ๋ธ ๋ธ๋ฆฟ์ง์ ๋๋ค.
npm install react-native-nmap --save;
- React Native 0.60+
$ cd ios/ && pod install- React Native <= 0.59
$ react-native link react-native-nmap
$ cd ios/ && pod install/android/build.gradle ํ์ผ์ ์๋์ ๊ฐ์ด ๋ ํฌ์งํฐ๋ฆฌ๋ฅผ ์ถ๊ฐํฉ๋๋ค
allprojects {
repositories {
...
maven { url 'https://repository.map.naver.com/archive/maven' } // ๋ค์ด๋ฒ ์ง๋ ์ ์ฅ์
}
}
/android/app/src/AndroidManifest.xml์ ์๋์ ๊ฐ์ด ์ถ๊ฐํ๊ณ ๋ฐ๊ธ๋ฐ์ ํด๋ผ์ด์ธํธ ์์ด๋๋ก ๋ฐ๊ฟ์ค๋๋ค.
<manifest>
<application>
<meta-data
android:name="com.naver.maps.map.CLIENT_ID"
android:value="YOUR_CLIENT_ID_HERE" />
</application>
</manifest>/ios/Podfile ํ์ผ์ ์๋์ ๊ฐ์ด ๋ ํฌ์งํฐ๋ฆฌ๋ฅผ ์ถ๊ฐํฉ๋๋ค
target 'projectName' do
...
pod 'NMapsMap' #๋ค์ด๋ฒ ์ง๋ ์ ์ฅ์
...
end
info.plist์ ์๋์ ๊ฐ์ด ๋ฐ๊ธ๋ฐ์ ํด๋ผ์ด์ธํธ ์์ด๋๋ฅผ ์ถ๊ฐํด์ค๋๋ค.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
...
<key>NMFClientId</key>
<string>YOUR_CLIENT_ID_HERE</string>
...
<dict>
<plist>import NaverMapView, { Marker } from "react-native-nmap";
function MyMap() {
const P0 = {latitude: 37.564362, longitude: 126.977011};
const P1 = {latitude: 37.565051, longitude: 126.978567};
const P2 = {latitude: 37.565383, longitude: 126.976292};
return <NaverMapView style={{width: '100%', height: '100%'}}
showsMyLocationButton={true}
center={{...P0, zoom: 16}}
onTouch={e => console.warn('onTouch', JSON.stringify(e.nativeEvent))}
onCameraChange={e => console.warn('onCameraChange', JSON.stringify(e))}
onMapClick={e => console.warn('onMapClick', JSON.stringify(e))}>
<Marker coordinate={P0} onClick={() => console.warn('onClick! p0')}/>
<Marker coordinate={P1} pinColor="blue" onClick={() => console.warn('onClick! p1')}/>
<Marker coordinate={P2} pinColor="red" onClick={() => console.warn('onClick! p2')}/>
</NaverMapView>
}