출처 : http://pphttp://pppdwer.tistory.com/entry/GoogleMap-API-v2
1. SHA1 Key를 얻어야합니다 |
일종의 개발용(=디버깅키)입니다, 추출하기 위해 사용되는 Keytool이라는 프로그램을 이용, 디버킹키를 추출하는 과정입니다. |
keytool -list -alias androiddebugkey -keystore debug.keystore -storepass android -keypass android -v |
위에 적힌 키를이용하여, SHA1 키를 뽑아보겠습니다. 윈도우 7기준 디버킹키가 담겨있는 debug.keystore는 C:\User\사용자\.android 안에 담겨있습니다. |
2. 구글맵 인증키를 발급받아야해요. Google APis Console(https://code.google.com/apis/console/) 여기서 발급받습니다!! 일단 구글맵 v2를 처음사용하시는 분들이 이포스팅을 볼테니, 프로젝트가 아직없으실겁니다. 왼쪽에 보시면 드롭다운 메뉴에 Create..을 누르신뒤 프로젝트 하나를 생성해주세요. |
생성하신뒤 왼쪽 드롭박스 밑의 하단메뉴를 보시면, Services 라는 항목이 보일거에요, 거길눌러주시고 Google Maps Android API v2 항목을 On으로 설정해줍니다. |
다음에 다시 메뉴를보시면 API Access 라는 탭이있는데요, 그탭의 Create new Android Key... 항목을 선택하시고, 아래 사진에 적힌대로 적혀주시면됩니다. |
키를 발급받았습니다! 이제우리는 해당프로젝트에 방금발급받은키로 맵을 띄우면 되는겁니다. (제가 이미지처리능력이 부족해서..포스팅도첨이고.. 모자이크를못하겠네요, 눈이 불편하시겠지만 메모장모자이크로 봐주세요..) |
3. SDK 다운로드 (Google Play Services SDK) 이클립스 실행후 Window - Android SDK Manager 실행 후 Extra 부분의 Google Play Services 킷을 인스톨해야합니다. (아래 체크되있는부분) |
4. 위에 구글맵을 사용하기위해 만드신 프로젝트가있죠? 순서가 잠깐꼬였지만... 이제 그프로젝트를 설정 해봅시다, 전 Posting 이라는 프로젝트를 예로 설명드리겠습니다~ 윗단계에서, 구글플레이킷을 다운받으셨다면, SDK폴더에 google-play-services_lib라는 라이브러리가 생깁니다, 정확한 경로는 다음과 같습니다. |
[SDK]/extras/google/google/google_play_services/libproject/google-play-services_lib |
이 라이브러리를 임포트 시켜줘야합니다. 이클립스 상에서 File-New-Other... -Android Project From Existing Code 로 임포트시키시면 됩니다. 아 참고로, 나 혼자만 진행중인 프로젝트라면 상관없지만, 함께 진행하는 프로젝트에선 워크스페이스에 경로 설정을 따로해주어야합니다, 고로 Copy project into workspace 에 체크해주시면 됩니다. 저같은 경우는 이미 임포트가 되있는상황이라 라이브러리가 회색으로 비활성화 되어있네요. |
임포트를 성공적으로 마무리하셨다면, 다음과같은 라이브러리패키지가 추가되게됩니다. |
다음엔 사용할 프로젝트에 이 라이브러리를 집어넣어줘야합니다. 프로젝트속성에서, (Properties) Android탭을 선택한후, 하단의 Library 박스에서 Add..버튼을 누른뒤 google-play-services_lib 를 선택하시면 됩니다. 아래와 같이됫다면, 정상이므로 확인하시고 프로젝트 로 돌아가시면 됩니다 |
이 과정으로 베이스셋팅은 종료가 됫습니다, 추가적인 퍼미션만 잡아주시면 됩니다~ |
5. 퍼미션 설정 해당 프로젝트의 메니페스트로 들어갑니다! 좀 바뀐것은, MapView에 직접적인 API키선언으로 맵을 활성화시켰던 V1과 달리 V2는 meta-data에 API 키를 설정하고 그키를 사용하는건데요, 일단 한번 해봅시다 메니페스트로 진입후 Menifest탭의 Menigest Extras 영역으로 갑니다. Add...을 누르신후 Uses Feature를 선택합니다. |
다음, Attribute for Uses Feature 에 버전값에 0x00020000 , Required 값에 true를 주시고 저장을 합니다 |
윗 과정은, OpenGL 2.0이라는걸 구글맵V2에서 사용하게 되서, OpenGL을 지원하지 않는 단말기에서는 맵을 활성화 시킬수 없는데요, 저위에 명령은 OpenGL을 지원하지않는 단말기에서도 실행시키는 명령 이 아니라, 지원하지 않는 단말기에는 설치자체가 되지않도록 별도로 설정을 해준 부분이에요~ |
이제 meta-data로 구글맵의 API키값을 추가해주어야합니다! 메니페스트의 Application 탭을 누른뒤,Application Nodes 탭에서 ,똑같이 Add...-Meta Data를 선택후 Name : com.google.android.maps.v2.API_KEY Value : 아까 위에서 발급받은 API키 입니다 요렇게 입력하시면 됩니다. 아래 사진 첨부하겠습니다. |
이제 본격적인 퍼미션 작업에 들어갑시다. 구글맵 데이터로딩에 따른 추가적인 권한을 설정하는 부분인 데요, 먼저 메니페스트의 Permission 탭으로 들어가서 Add...버튼으로 각 퍼미션을 추가시켜주시면 됩니다! |
처음으로 Add... 를 누른뒤 Permission 을 선택합니다. 그럼 옆에 Attributes for Permission 탭이 팝업되는데요, Name탭에 패키지명.permission.MAPS_RECEIVE 이렇게 써주시면됩니다. 저같은 경우는 패키지가 com.example.posting 이니까 즉 com.example.posting.permission.MAPS_RECEIVE 가 되겠죠?? 한번 해볼까요? |
위에처럼 하시면 되요! 그리고 추가적으로 Add...을 선택하신뒤, 이번엔 Uses permission을 선택하시고 아래적힌 다섯개의 권한을 각각 Uses Permission으로 추가시켜주시면 됩니다. |
android.permission.INTERNET android.permission.WRITE_EXTERNAL_STORAGE android.permission.ACCESS_COARSE_LOCATION android.permission.ACCESS_FINE_LOCATION com.google.android.providers.gsf.permission.READ_GSERVICES |
6.자! 이제 구글맵을 띄우겠습니다 , 레이아웃에 구글맵을 추가해야하는데요, v1에선 MapView를 띄우고 MapActivity를 상속받았던 반면 v2에선 Fragment 로 맵을띄우고 FragmentActivity나, Activity를 상속받아 맵을 출력합니다. |
첫번째로 레이아웃입니다. |
두번째로 클래스, 즉 액티비티 부분입니다 |
액티비티 부분에서, 나는 단순 맵만띄우고 추가기능은 사용하지않겠다. 하시는 분들은 FragmentActivity가 아닌 단순 Activity를 상속받으셔도 맵은 띄워집니다! 자이제 한번 실행해볼까요?? (참고로 AVD로 돌리시면 구글플레이서비스킷오류와함께 실행이 안되실거에요... 귀찮으시더라도, 사실상 더빠르지만;; 실제디바이스로 구동합시다.ㅎㅎ) |
'Program > Android' 카테고리의 다른 글
Android 1일차 - 안드로이드 생명주기 (0) | 2015.08.01 |
---|---|
개발자가 Parse를 사용해야하는 15가지 이유 (0) | 2015.05.07 |
Android Layout (0) | 2014.09.12 |
안드로이드/Android Cursor를 이용한 DB 데이터 사용 하기 (0) | 2014.08.18 |
이클립스 PC 와 Android 스마트폰 연결하기. (0) | 2014.08.13 |