작성일에 직접 만들어가면서 포스팅한것이기 때문에,
작성일 기준으로 가장 최신 자료입니다.
1. 맵 표시를 위해 SDK Manager를 이용해 Google Play Service 최신버전 업데이트
작은 빨간네모안의 SDK Manager를 누르면 Android SDK Manager 창이 위와같이 뜬다.
휠을 내려서 Extras 를 찾아서 하위의 Google Play services 를 체크하고 Install packages... 를 누른다
(필자는 이미 최신버전이라 단추가 비활성화상태)
이까지 마친 뒤 SDK 폴더로 이동 한 다음,
sdk/extras/google/google_play_services/libproject/google-play-services_lib 파일을 import해 준다.
밑의 사진을 보고 따라한다.
이 그림은 필자와 약~간 다를건데 필자는 이미 라이브러리를 import 해놨기때문에 위와같이 나온다. 상관하지않는다.
그럼 이렇게 프로젝트가 생성되고,
생성된 프로젝트를 우클릭 > Properties 한 다음 설정을 위와 같이 맞춘다.
Build Target은 꼭 2.3.3 이 아니라도 상관 없다. (보다 낮은것은 추천하지 않는다.)
그리고 이제 지도를 띄울 프로젝트를 만들어 보겠다.
File > New > Android Application Project 순서로 실행
(Android Application Project 가 없는사람은 당황하지 말고 Other... > Android > Android Activity 순으로 실행한다.
Next 한 다음 대충 다음 다음 Finish 해 주면 프로젝트 생성 완료.
만들어진 프로젝트에 우클릭 > Properties 을 해 주고,
Android 클릭, Add.. 클릭 , google-play-services_lib 클릭 후 ok > ok 해 준다.
아까와는 달리 Is Library는 체크하지 않는다.
이까지 했다면 이제 맵을 띄울 바탕은 끝났다. 본격적으로 맵을 띄워보자.
2. 구글맵 API Console 등록
우선 구글계정이 필수, 로그인 하였다면
https://code.google.com/apis/console로 접속한다.
보는바와 같이 APIs & auth의 APIs 카테고리에서
구글맵 서비스를 이용하기 위해 Google Maps Android API v2 를 OFF > ON 으로 바꿔준다. 필수
3. API Key 발급
맵을 띄우기 위해서는 자신만의 고유한 API Key를 발급받아야한다.
이를 발급받기 위해서는 컴퓨터의 디버그용 키스토어를 발급받아야하는데, 간단히 설명하자면
개발을 할 때는 디버그 키스토어라는것을 이용해 어플에 서명(자신을 각인)하여 개발하고,
상용할 때는 배포용 디버그 키스토어를 이용해 어플에 서명을 하고 배포해야 사용이 가능하다.
여기서는 디버그 키스토어를 사용하는데, 잘 이해가 안간다면 깊히 생각하지 않아도 된다.
시작 > 실행 > cmd 를 이용해 명령프롬프트창을 띄운다(단축키 윈도우키 + R 후 cmd 엔터)
디버그용 키스토어가 저장되는 위치로 이동하기 위해 본인의 운영체제에 따라 다음과 같이 입력한다.
Windows XP : C:\Documents And Settings\사용자 계정\.android
Windows Vista/7 : C:\Users\사용자 계정\.android
OSX/Linux : ~/.android
필자는 윈7에 사용자계정은 fureun 이므로
엔터를 치면 경로가 이동하게 되고, 그 다음 위 사진과 같이
keytool -list -v -keystore debug.keystore -alias androiddebugkey -storepass android -keypass android
이렇게 입력후 엔터를 치면
이렇게 나오는데, 여기서 맵을 띄우기 위해 필요한것은 SHA1: 뒤의 16진수이다.
창을 닫기 전에 따로 메모장등에 적어서 보관해놓는다.
그리고 아까 API Console로 돌아가서
누르면 창이하나 뜨는데 Android를 선택 하고,
위와같이 입력한 뒤 Create Client ID 를 누른다.
큰 네모에는 아까 명령프롬프트에서 추출한 SHA1값;패키지명
드디어 API key가 나왔다.
위의 키값을 따로 저장한 뒤, 다시 프로젝트로 돌아가보겠다.
매니패스트를 켠 뒤 AndroidManifest.xml 에서
다음과 같이 빨간네모부분을 추가한다
맨밑의 android:value= 에는 조금전 발급받은 Api key를 입력하면 된다.
따라치기 귀찮으면 밑의 글 복붙
<uses-feature
android:glEsVersion="0x00020000"
android:required="true" />
<permission
android:name="com.example.SearchMJ.permission.MAPS_RECEIVE"
android:protectionLevel="signature" >
</permission>
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />
-------------------------------------------------
<meta-data
android:name="com.google.android.maps.v2.API_KEY"
android:value="Api key" />
<meta-data
android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version" />
그리고 메인액티비티의 레이아웃(res > layout > activity_main.xml)으로 이동해서
입력. 소스는
<fragment
android:id="@+id/map"
android:name="com.example.GoogleMapVersion2.Fragment"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
class="com.google.android.gms.maps.SupportMapFragment" />
다음과 같이 MainActivity extends Activity 를 FragmentActivity 로 바꿔준다
그리고 실행 하면
짜잔 ~ 하고 맵이 나타난다.
최초 시작 위치나 카메라 줌 레벨 등은 동일 카테고리 내의 다른 포스팅을 참조하기 바란다.
혹시 에러사항이 있거나 문의사항이 있다면 댓글 남기면 친절히 답변 달아드리겠음
한참걸렸네 ..