Skip to content
Home » 안드로이드 스튜디오 구글 맵 | 안드로이드 앱 개발 – 구글지도를 표시하고, Api 키 안전하게 사용하는 방법 상위 200개 답변

안드로이드 스튜디오 구글 맵 | 안드로이드 앱 개발 – 구글지도를 표시하고, Api 키 안전하게 사용하는 방법 상위 200개 답변

당신은 주제를 찾고 있습니까 “안드로이드 스튜디오 구글 맵 – 안드로이드 앱 개발 – 구글지도를 표시하고, API 키 안전하게 사용하는 방법“? 다음 카테고리의 웹사이트 https://kk.taphoamini.com 에서 귀하의 모든 질문에 답변해 드립니다: https://kk.taphoamini.com/wiki/. 바로 아래에서 답을 찾을 수 있습니다. 작성자 슬기로운코딩생활 이(가) 작성한 기사에는 조회수 11,913회 및 좋아요 141개 개의 좋아요가 있습니다.

Table of Contents

안드로이드 스튜디오 구글 맵 주제에 대한 동영상 보기

여기에서 이 주제에 대한 비디오를 시청하십시오. 주의 깊게 살펴보고 읽고 있는 내용에 대한 피드백을 제공하세요!

d여기에서 안드로이드 앱 개발 – 구글지도를 표시하고, API 키 안전하게 사용하는 방법 – 안드로이드 스튜디오 구글 맵 주제에 대한 세부정보를 참조하세요

구글 클라우드 서비스에서 제공하는 구글맵 SDK를 사용하면 전세계 어디든지 지도를 표시하고 그 위에 원하는 마커를 표시할 수 있습니다. 구글 클라우드 서비스에서 API 키를 발급하고 안전하게 사용하기 위해 키 사용에 여러가지 제한을 두는 방법을 설명합니다. 또한 구글 지도 위에 마커를 표시하고, GPS를 통해 현재 위치를 탐색하기 위한 버튼을 추가하는 방법도 함께 설명합니다.
깃허브 – https://github.com/wonderful-coding-life/sample.google.map

안드로이드 스튜디오 구글 맵 주제에 대한 자세한 내용은 여기를 참조하세요.

Google Maps Android API 사용 방법 및 예제 – 멈춤보단 천천히 …

줌을 하는 함수인데 사용하면 지도가 엉뚱한 곳으로 이동합니다. 2021. 5. 11 Andro Studio 4.1.3에서 테스트. 2022. 6. 18 Andro API 32에서 테스트 …

+ 여기에 자세히 보기

Source: webnautes.tistory.com

Date Published: 4/1/2022

View: 7400

Android Studio 구글 지도 API 사용하기

구글 Map API를 사용하여 Andro Studio에 지도를 삽입해보자. … Andro Studio에서 사용할 것이기 때문에 API 라이브러리에서 Maps SDK for …

+ 여기에 보기

Source: sothecode.tistory.com

Date Published: 1/15/2021

View: 339

안드로이드 구글 지도 사용하기 – 1 [구글 지도 띄우기]

구글 맵 적용. 먼저 build.gradle에 아래 코드를 추가해줍니다. implementation ‘com.google.andro.gms:play- …

+ 여기에 표시

Source: imleaf.tistory.com

Date Published: 12/18/2022

View: 8157

[android studio] google maps API 사용방법 정리

구글 맵 연동을 한번 해보자. 우선 맵 api를 가져올 andro studio 프로젝트가 없다면 미리 생성을 해두자.

+ 여기에 자세히 보기

Source: textbox.tistory.com

Date Published: 12/15/2021

View: 7255

[Java][Android] 구글맵 빠르게 적용하기

이제 안드로이드 스튜디오를 켜서 구글맵 API를 적용할 프로젝트를 열고, 매니페스트에 아래 코드를 추가합니다. + 여기에 더 보기

Source: stickode.tistory.com

Date Published: 9/4/2021

View: 7782

안드로이드 스튜디오 구글 맵 | 안드로이드 앱 개발 – 구글지도를 …

안드로이드 스튜디오 구글 맵 주제에 대한 자세한 내용은 여기를 참조하세요. Andro용 Maps SDK 빠른 시작 – Google Developers. Andro 스튜디오에서 …

+ 여기에 보기

Source: you.xosotanphat.com

Date Published: 6/5/2022

View: 2501

안드로이드 앱 만들기 #24 구글맵 (Google Map) – 1111.com.vn

안드로이드 스튜디오 구글 맵 주제에 대한 자세한 내용은 여기를 참조하세요. Andro용 Maps SDK 빠른 시작 – Google Developers. Andro 스튜디오에서 …

+ 여기에 자세히 보기

Source: you.1111.com.vn

Date Published: 9/27/2022

View: 181

Tích hợp Google Map vào ứng dụng Android – Viblo

Hướng dẫn này sử dụng Andro Studio phiên bản beta 2.0 mới nhất, nếu bạn dùng bản ổn định 1.5 giao diện có thể hơi khác 1 chút. Mở SDK manager và cài thêm gói …

+ 여기를 클릭

Source: viblo.asia

Date Published: 4/16/2022

View: 383

주제와 관련된 이미지 안드로이드 스튜디오 구글 맵

주제와 관련된 더 많은 사진을 참조하십시오 안드로이드 앱 개발 – 구글지도를 표시하고, API 키 안전하게 사용하는 방법. 댓글에서 더 많은 관련 이미지를 보거나 필요한 경우 더 많은 관련 기사를 볼 수 있습니다.

안드로이드 앱 개발 - 구글지도를 표시하고, API 키 안전하게 사용하는 방법
안드로이드 앱 개발 – 구글지도를 표시하고, API 키 안전하게 사용하는 방법

주제에 대한 기사 평가 안드로이드 스튜디오 구글 맵

  • Author: 슬기로운코딩생활
  • Views: 조회수 11,913회
  • Likes: 좋아요 141개
  • Date Published: 2020. 6. 13.
  • Video Url link: https://www.youtube.com/watch?v=mLqBNdqYEQw

Google Maps Android API 사용 방법 및 예제

반응형

Google Maps Android API를 사용하는 기본적인 방법과 사용시 발생할 수 있는 문제점에 대해 다룹니다.

1. 간단한 안드로이드 구글맵 예제 동작시키기

2. Google Maps Android API 예제 코드 설명

3. 관련 포스팅

3.1. Android Google Map에 현재 위치 표시하기( FusedLocationProviderClient 사용)

3.2. Android Google Map에 현재 위치 표시하기( GoogleApiClient, FusedLocationApi 사용)

3.2. Places API Web Service를 사용하여 Google Map에 현재 위치 주변의 음식점 표시하기

3.3. GenyMotion 가상머신에 Google Apps설치하여 Google Maps Android API 테스트 하기

2015. 2.10

. . . . . . . . .

2019. 5. 6 로그캣에서 에러 확인하는 법과 에뮬레이터에서 실행시 문제점 추가

2019. 7. 19 androidx 관련 내용 추가

2019. 8. 15 SupportMapFragment로 변경

2020. 9. 12 테스트 ( Android Studio 4.0.1, Android 10.0+ (R) API 30 )

CameraUpdateFactory.zoomTo가 오동작하는 현상이 발견되었습니다.

줌을 하는 함수인데 사용하면 지도가 엉뚱한 곳으로 이동합니다.

2021. 5. 11 Android Studio 4.1.3에서 테스트

2022. 6. 18 Android API 32에서 테스트

1. 간단한 안드로이드 구글맵 예제 동작시키기

먼저 구글맵 예제를 실행시켜 보고, 후반부에 예제 코드를 설명합니다.

1. Google Developers Console 사이트 (https://console.developers.google.com/apis/dashboard )에 접속하여 프로젝트 만들기를 클릭합니다.

자주 구성이 바뀌는 편이어서 포스팅에서 진행한 캡쳐 화면과 차이가 있을 수 있습니다.

2. 적당한 프로젝트 이름을 적고 만들기를 클릭합니다.

3. 잠시 기다리면 새로운 프로젝트 생성이 완료 됩니다.

Google Maps Android API를 사용하려면 추가 설정이 필요합니다. API 및 사용 서비스 사용 설정을 클릭합니다.

4. maps sdk for android를 검색하여 Maps SDK for Android를 선택합니다.

5. 사용을 클릭합니다.

6. API가 활성화 되었습니다.

마우스 커서를 왼쪽으로 이동하면 보이는 메뉴에서 사용자 인증 정보를 선택합니다.

사용자 인증 정보 만들기를 클릭합니다.

7. 사용자 인증 정보 만들기를 클릭하여 보이는 메뉴에서 API 키를 클릭합니다.

8. API 키를 수정을 클릭합니다.

9. 앞에서 생성된 API 키에 사용 제한을 둘 수 있는 웹페이지가 보입니다.

애플리케이션 제한사항, API 제한사항을 설정할 수 있습니다.

10. 애플리케이션 제한 사항에서 Android 앱을 선택하고 항목 추가를 클릭합니다.

11. Google Maps Android API를 사용할 안드로이드 프로젝트의 패키지 이름과 Android Studio가 설치된 컴퓨터에서 생성된 SHA-1 인증서 지문이 필요합니다.

12. SHA-1 인증서 지문을 얻기 위한 과정부터 진행합니다. 윈도우키 + R을 누른 후 cmd를 입력하고 엔터를 눌러서 명령 프롬프트 창을 엽니다.

윈도우에서는 다음 명령으로 SHA-1 인증서 지문을 획득할 수 있습니다.

“C:\Program Files\Android\Android Studio\jre\bin\keytool” -list -v -keystore “%USERPROFILE%\.android\debug.keystore” -alias androiddebugkey -storepass android -keypass android

참고로 우분투 리눅스에서는 다음 명령을 사용합니다.

keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android

출시할 때에는 다음 명령을 사용하세요. 테스트 해보지는 않았습니다.

your_keystore_name은 .keystore 확장자를 포함하여 키 저장소의 정규화된 경로와 이름으로 바꿉니다. your_alias_name은 인증서 생성 시 할당한 별칭으로 바꿉니다.

keytool -list -v -keystore your_keystore_name -alias your_alias_name

SHA1 옆에 있는 문자열을 복사해 놓으면 됩니다.

문제 없으면 14번을 진행하고, 그렇지 않으면 13번을 확인해보세요..

13. 안드로이드 스튜디오에서 앱을 빌드하여 안드로이드 디바이스에 설치한 적이 없어서 다음과 같은 에러가 발생합니다.

keytool 오류: java.lang.Exception: 키 저장소 파일이 존재하지 않음: C:\Users\webnautes\.android\debug.keystore

간단한 안드로이드 프로젝트를 생성하여 빌드 후, 안드로이드 디바이스에 설치하면 debug.keystore 파일이 사용자 디렉토리의 하위 디렉토리인 .android 디렉토리 안에 생성됩니다.

다시 12번을 진행해보면 SHA1 fingerprint 획득할 수 있습니다.

14. Google Maps Android API를 사용할 안드로이드 프로젝트를 준비해놓았다면 패키지 이름을 따로 복사해놓고 15번을 진행합니다.

그렇지 않다면 안드로이드 스튜디오를 실행하여 새로운 프로젝트를 생성합니다.

아래 화면에서 New Project를 선택하거나 메뉴에서 File > New > New Project를 선택합니다.

Empty Activity를 선택합니다.

Configure your project의 Name 항목에 프로젝트 이름을 적어줍니다.

Language 항목이 Java인지 확인하세요.

본 포스트에서는 Minimum SDK로 API 21를 사용했습니다.

안드로이드 프로젝트 생성이 완료되어 아래 화면처럼 보일때 MainActivity.java 파일에서 패키지 이름을 복사해둡니다.

15. Google Developers Console 사이트에 복사해두었던 패키지 이름과 SHA-1 인증서 지문을 붙여넣기하고 완료를 클릭합니다.

16. API 제한사항에서 키 제한을 선택하고 콤보박스에서 Maps SDK for Android를 체크하고 확인을 클릭합니다.

이제 저장을 클릭합니다.

17. 구글 맵 안드로이드 API를 사용하기 위한 API 키가 준비되었습니다. 따로 복사해둡니다.

18. 매네페스트 파일 AndroidManifest.xml의 태그 하위요소로 태그를 사용하여 17번에서 복사해둔 API키를 입력해줍니다.

아래 코드에서 API키 부분을 대체하면 됩니다.

19. 등록 받은 키 확인이 필요하다면 Google Developers Console 사이트 (https://console.developers.google.com/apis/dashboard )에서 상단에 있는 프로젝트명을 Google Maps Android API를 위한 것으로 바꾸어 선택합니다.

생성한 프로젝트가 하나라면 자동으로 선택됩니다.

왼쪽으로 마우스 커서를 가져가면 보이는 메뉴에서 사용자 인증 정보를 클릭합니다.

키 표시를 클릭하면 API 키를 확인할 수 있습니다.

20. Google Maps Android API를 사용하려면 Google Play services 라이브러리 패키지를 설치해줘야 합니다.

안드로이드 스튜디오로 돌아와서 메뉴에서 Tools > SDK Manager를 선택합니다.

SDK Tools 탭을 클릭하고 Google Play services 항목을 체크하고 OK를 클릭하여 설치를 진행합니다.

21. 모듈 app의 build.gradle에 Google Play Services 라이브러리를 프로젝트에서 사용한다고 추가해줘야 합니다.

implementation ‘com.google.android.gms:play-services-maps:18.0.2’

implementation ‘com.google.android.gms:play-services-location:20.0.0’

추가해 준 후 , Sync Now를 클릭합니다.

참고로 노란색으로 표시된 패키지 이름에 마우스 커서를 가져가면 최근 버전을 알려줍니다.

최근버전으로 교체합니다. 하지 않아도 상관없습니다.

최근 버전으로 교체하면 다음처럼 노란색 블럭이 모두 사라집니다.

Sync Now를 클릭해야 반영됩니다.

24. 레이아웃 파일 activity_main.xml 을 다음 내용으로 바꾸어 줍니다. 태그를 지도가 표시될 위치에 적어줍니다.

오른쪽 상단에 보이는 Code를 클릭하면 코드를 입력할 수 있습니다.

25. 자바 코드 파일 MainActivity.java 를 다음 내용으로 대체합니다.

첫번째 줄 package 로 시작하는 것은 남겨 두세요.

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;

import com.google.android.gms.maps.CameraUpdateFactory;

import com.google.android.gms.maps.GoogleMap;

import com.google.android.gms.maps.OnMapReadyCallback;

import com.google.android.gms.maps.SupportMapFragment;

import com.google.android.gms.maps.model.LatLng;

import com.google.android.gms.maps.model.MarkerOptions;

public class MainActivity extends AppCompatActivity

implements OnMapReadyCallback {

private GoogleMap mMap;

@Override

protected void onCreate (Bundle savedInstanceState) {

super .onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager()

.findFragmentById(R.id.map);

mapFragment.getMapAsync( this );

}

@Override

public void onMapReady ( final GoogleMap googleMap) {

mMap = googleMap;

LatLng SEOUL = new LatLng(37.56, 126.97);

MarkerOptions markerOptions = new MarkerOptions();

markerOptions.position(SEOUL);

markerOptions.title( “서울” );

markerOptions.snippet( “한국의 수도” );

mMap.addMarker(markerOptions);

// 기존에 사용하던 다음 2줄은 문제가 있습니다.

// CameraUpdateFactory.zoomTo가 오동작하네요.

//mMap.moveCamera(CameraUpdateFactory.newLatLng(SEOUL));

//mMap.animateCamera(CameraUpdateFactory.zoomTo(10));

mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(SEOUL, 10));

}

}

26. 실행 결과 화면입니다. 서울 중앙에 빨간색 마커가 보이고 클릭하면 마커에 추가해두었던 설명이 보입니다.

2. Google Maps Android API 예제 코드 설명

1. MapFragment는 앱에 지도를 표시하기 위해 사용되는 컴포넌트로 관련 처리를 자동으로 해줍니다. 앱에서 사용하기 위해서는 레이아웃의 액티비티에 태그를 사용하여 추가시켜 주어야 합니다.

2. MainActivity 클래스에서 OnMapReadyCallback 인터페이스를 구현한다고 선언해놓고

public class MainActivity extends AppCompatActivity

implements OnMapReadyCallback {

OnMapReadyCallback 인터페이스의 onMapReady 메소드를 구현해줘야 합니다.

맵이 사용할 준비가 되었을 때(NULL이 아닌 GoogleMap 객체를 파라미터로 제공해 줄 수 있을 때) 호출되어지는 메소드입니다.

@Override

public void onMapReady(final GoogleMap map) {

. . . . . . . . . . . . . . . . . . . .

}

MarkerOptions으로 마커가 표시될 위치(position), 마커에 표시될 타이틀(title), 마커 클릭시 보여주는 간단한 설명(snippet)를 설정하고 addMarker 메소드로 GoogleMap 객체에 추가해주면 지도에 표시됩니다.

LatLng SEOUL = new LatLng(37.56, 126.97);

MarkerOptions markerOptions = new MarkerOptions();

markerOptions.position(SEOUL);

markerOptions.title(“서울”);

markerOptions.snippet(“한국의 수도”);

mMap.addMarker(markerOptions);

moveCamera 메소드를 사용하여 카메라를 지정한 경도, 위도로 이동합니다.

CameraUpdateFactory.zoomTo 메소드를 사용하여 지정한 단계로 카메라 줌을 조정합니다. 1 단계로 지정하면 세계지도 수준으로 보이고 숫자가 커질수록 상세지도가 보입니다.

mMap.moveCamera(CameraUpdateFactory.newLatLng(SEOUL));

mMap.animateCamera(CameraUpdateFactory.zoomTo(10));

글 업데이트한 시점에서는(2020. 9. 12) CameraUpdateFactory.zoomTo 함수가 오동작을 하여 사용하는 순간 엉뚱한 위치로 이동하는 현상이 있습니다.

다음처럼 코드를 변경하여 해결했습니다.

mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(SEOUL, 10));

3. 이제 onCreate 메소드에서 getMapAsync() 메소드를 호출하여 GoogleMap 객체가 준비될 때 실행될 콜백을 등록합니다.

그러기 위해서는 레이아웃에 추가했던 프래그먼트(com.google.android.gms.maps.SupportMapFragment)의 핸들을 가져와야 합니다.

FragmentManager.findFragmentById 메소드를 사용하여 지정한 ID를 갖는 프래그먼트의 핸들을 가져옵니다.

getMapAsync() 메소드가 메인 쓰레드에서 호출되어야 메인스레드에서 onMapReady 콜백이 실행됩니다.

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager()

.findFragmentById(R.id.map);

mapFragment.getMapAsync(this);

}

3. 관련 포스팅

3.1. Android Google Map에 현재 위치 표시하기( FusedLocationProviderClient 사용)

FusedLocationProviderClient를 사용하여 구글맵에 현재 위치를 표시하는 예제입니다.

https://webnautes.tistory.com/1249

FusedLocationProviderClient는 Deprecated된 FusedLocationApi를 대체하게 되며 Google Play services 11.6.0 이상에서 사용하는 것을 권장하고 있습니다.

3.2. Android Google Map에 현재 위치 표시하기( GoogleApiClient, FusedLocationApi 사용)

GoogleApiClient와 FusedLocationApi를 사용하여 구글맵에 현재 위치를 표시하는 예제입니다.

https://webnautes.tistory.com/1011

3.3. Places API Web Service를 사용하여 Google Map에 현재 위치 주변의 음식점 표시하기

Places API Web Service를 이용하여 현재 위치 주변의 음식점 정보를 안드로이드의 구글맵에 표시하는 내용을 다룹니다.

https://webnautes.tistory.com/1080

3.4. GenyMotion 가상머신에 Google Apps설치하여 Google Maps Android API 태스트 하기

Genymotion에서 Google Map API을 가지고 작성한 Android 앱을 테스트하는 방법을 소개합니다.

https://webnautes.tistory.com/1064

반응형

Android Studio 구글 지도 API 사용하기

구글 Map API를 사용하여 Android Studio에 지도를 삽입해보자.

1. Google APIs

https://console.developers.google.com/apis/dashboard

먼저 위 사이트로 들어가서 로그인을 한 뒤 프로젝트 만들기 버튼을 클릭한다.

Google APIs 대시보드

프로젝트 이름을 작성하고 만들기 버튼을 클릭한다.

예시로 프로젝트 이름을 GoogleMap으로 지정하였다.

프로젝트 생성이 완료되면 API 및 서비스 사용 설정 버튼을 클릭한다.

API 라이브러리

Android Studio에서 사용할 것이기 때문에 API 라이브러리에서 Maps SDK for Android를 선택한다.

사용 버튼을 누르면 API가 활성화 되면서 아래와 같은 화면이 나온다.

API를 사용하기 위해서는 인증설정을 해야한다.

인증 설정을 하기 위해 사용자 인증 정보를 클릭한다.

사용자 인증 정보 만들기를 클릭한 뒤 API 키를 선택한다.

API 키가 생성되고 키 제한 버튼을 클릭한다.

Android 앱을 선택하고 항목 추가 버튼을 눌러 패키지명과 SHA-1 인증서 디지털 지문을 작성한다.

SHA-1 인증서 디지털 지문은 cmd 창에서 확인할 수 있다.

먼저 윈도우키 + R을 누른 후 cmd를 입력하여 명령 프롬프트 창을 연다.

“C:\Program Files\Android\Android Studio\jre\bin\keytool” -list -v -keystore “%USERPROFILE%\.android\debug.keystore” -alias androiddebugkey -storepass android -keypass android

위와 같이 두 줄로 작성된 코드를 한 줄에 작성하면 다음과 같은 출력문이 나온다.

여기에 출력된 SHA1 문자열을 복사해서 작성한다.

다음 API 제한사항에서 키 제한을 체크한 뒤에 저장 버튼을 클릭한다.

API 키 생성 완료 화면

완료되면 위와 같은 화면이 나오는데 API 키를 복사해둔다.

2. Android Studio

Google Maps Android Api를 사용하기 위해서는 Google Play services 라이브러리를 설치해야한다.

Tools > SDK Manager 선택

SDK Tools 탭 클릭한 뒤 Google Play services 항목을 체크하고 APPLY를 클릭하여 설치를 진행한다.

앱 수준의 build.gradle에 들어간 뒤 dependencies 안에 아래 코드를 추가한 뒤 동기화를 진행한다.

implementation ‘com.google.android.gms:play-services-maps:17.0.0’

implementation ‘com.google.android.gms:play-services-location:17.0.0’

그 다음 androidmanifest.xml에 코드를 추가하는데 application 태그 안에 아래와 같이 태그를 삽입한다.

value 값 안에는 인증 정보에서 복사해두었던 API 키를 작성한다.

Map을 삽입할 레이아웃에 MapView를 삽입한다

레이아웃에 해당하는 java 파일로 이동하여 코드를 추가로 작성한다.

public class MainActivity extends AppCompatActivity implements OnMapReadyCallback {

private GoogleMap mMap;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);

mapFragment.getMapAsync(this);

}

@Override

public void onMapReady(final GoogleMap googleMap) {

mMap = googleMap;

LatLng SEOUL = new LatLng(37.56, 126.97);

MarkerOptions markerOptions = new MarkerOptions(); // 마커 생성

markerOptions.position(SEOUL);

markerOptions.title(“서울”); // 마커 제목

markerOptions.snippet(“한국의 수도”); // 마커 설명

mMap.addMarker(markerOptions);

mMap.moveCamera(CameraUpdateFactory.newLatLng(SEOUL)); // 초기 위치

mMap.animateCamera(CameraUpdateFactory.zoomTo(15)); // 줌의 정도

googleMap.setMapType(GoogleMap. MAP_TYPE_HYBRID ); // 지도 유형 설정

}

}

이렇게 설정하면 지도가 출력된다.

실행 화면

마커 클릭 화면

안드로이드 구글 지도 사용하기

구글 API 발급

https://cloud.google.com/ 에 접속합니다.

로그인을 한 후에 상단에 있는 콘솔 버튼을 눌러줍니다.

그리고 API 및 서비스에 들어갑니다

그리고 프로젝트를 생성해줍니다.

상단에 있는 API 및 서비스 사용 설정을 누르고

Maps SDK for Android를 선택해줍니다.

사용 설정 버튼을 누른 뒤에

사용자 인증 정보로 와서

API 키를 생성해줍니다.

키 제한을 클릭하여 아래와 같이 제한 설정을 해줍니다.

SHA-1 인증키 발급받기

SHA-1 인증키는 아래와 같이 발급받을 수 있습니다.

Gradle > Tasks > android > signingReport를 더블 클릭하면

위와 같이 발급이 되고 복사하여 붙여 넣으시면 됩니다.

구글 맵 적용

먼저 build.gradle에 아래 코드를 추가해줍니다.

implementation ‘com.google.android.gms:play-services-maps:16.0.0’ implementation ‘com.google.maps.android:android-maps-utils:0.5+’ implementation ‘com.android.support:cardview-v7:28.0.0’ implementation ‘com.android.support:design:28.0.0’

그리고 AndroidManifest를 아래와 같이 수정해줍니다.

안드로이드에서 위치를 측정할 때 2가지로 봅니다.

하나는 네트워크 위치로 오차는 크지만 배터리가 적게 사용되고 실내에서도 측정이 가능하고,

다른 하나는 GSP 센서로 오차가 적은 대신에 배터리 사용이 많아지고 실내에서 측정이 불가능합니다.

그래서 둘이 보완하여 사용을 해야 합니다.

는 네트워크로만 위치를 측정하는 것이고

는 GPS 센서를 사용하는 것입니다.

위의 코드는 안드로이드 파이부터 새롭게 추가된 코드입니다.

구글 맵이 포함된 레이아웃 만들기

아래와 같이 작성해줍니다.

// activity_main.xml

구글 맵 코드 작성하기

먼저 권한 설정 코드입니다.

class MainActivity : AppCompatActivity() { val PERMISSIONS = arrayOf( Manifest.permission.ACCESS_COARSE_LOCATION, Manifest.permission.ACCESS_FINE_LOCATION) val REQUEST_PERMISSION_CODE = 1 private fun checkPermissions(): Boolean { for (permission in PERMISSIONS) { if (ActivityCompat.checkSelfPermission(this, permission) != PackageManager.PERMISSION_GRANTED) { return false } } return true } override fun onRequestPermissionsResult(requestCode: Int, permissions: Array, grantResults: IntArray) { super.onRequestPermissionsResult(requestCode, permissions, grantResults) initMap() } }

퍼미션 목록중에 권한이 하나라도 없으면 false를 반환합니다.

onCreate 안에 작성할 코드입니다.

class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) mapView.onCreate(savedInstanceState) if (checkPermissions()) { initMap() } else { ActivityCompat.requestPermissions(this, PERMISSIONS, REQUEST_PERMISSION_CODE) } myLocationButton.setOnClickListener { onMyLocationButtonClick() } } }

먼저 맵뷰에 onCreate 함수를 호출해주고,

퍼미션을 체크한 후 권한이 있으면 initMap()으로 맵을 초기화 해주고 없으면 권한을 요청하는 코드입니다.

맵을 초기화 해주는 initMap의 코드입니다.

class MainActivity : AppCompatActivity() { val DEFAULT_ZOOM_LEVEL = 17f val CITY_HALL = LatLng(37.5662952, 126.97794509999994) var googleMap: GoogleMap? = null @SuppressLint(“MissingPermission”) fun initMap() { mapView.getMapAsync { googleMap = it it.uiSettings.isMyLocationButtonEnabled = false when { checkPermissions() -> { it.isMyLocationEnabled = true it.moveCamera(CameraUpdateFactory.newLatLngZoom(getMyLocation(), DEFAULT_ZOOM_LEVEL)) } else -> { it.moveCamera(CameraUpdateFactory.newLatLngZoom(CITY_HALL, DEFAULT_ZOOM_LEVEL)) } } } } }

getMapAsync는 구글 맵을 불러오는 함수입니다.

구글 맵을 불러온 후에 googleMap = it을 통해 gooleMap 변수에 객체를 저장합니다.

it.uiSettings.isMyLocationButtonEnabled = false

현재 위치 이동 버튼 비활성화를 한 뒤에권한을 확인하여 권한이 있을 경우

it.isMyLocationEnabled = true it.moveCamera(CameraUpdateFactory.newLatLngZoom(getMyLocation(), DEFAULT_ZOOM_LEVEL))

현재 위치를 활성화 해주고, 카메라를 이동해줍니다.

만약 권한이 없다면 지정해둔 서울시청의 위치로 이동을 해줍니다.

현재 위치를 반환해주는 getMyLocation의 코드입니다.

class MainActivity : AppCompatActivity() { @SuppressLint(“MissingPermission”) fun getMyLocation(): LatLng { val locationProvider: String = LocationManager.GPS_PROVIDER val locationManager = getSystemService(Context.LOCATION_SERVICE) as LocationManager val lastKnownLocation: Location = locationManager.getLastKnownLocation(locationProvider) return LatLng(lastKnownLocation.latitude, lastKnownLocation.longitude) } }

코드를 살펴보면 위치를 측정하는 프로바이더를 GPS로 설정을 하고, 위치 서버스 객체를 불러온 후, 마지막으로 업데이트된 위치를 가져오고 그것을 위도 경도로 반환합니다.

마지막으로 버튼을 클릭 하면 현재 위치로 이동하는 onMyLocationButtonClick의 코드입니다.

class MainActivity : AppCompatActivity() { private fun onMyLocationButtonClick() { when { checkPermissions() -> googleMap?.moveCamera( CameraUpdateFactory.newLatLngZoom(getMyLocation(), DEFAULT_ZOOM_LEVEL) ) else -> Toast.makeText(applicationContext, “위치사용권한 설정에 동의해주세요”, Toast.LENGTH_LONG).show() } } }

전체 코드

class MainActivity : AppCompatActivity() { val PERMISSIONS = arrayOf( Manifest.permission.ACCESS_COARSE_LOCATION, Manifest.permission.ACCESS_FINE_LOCATION) val REQUEST_PERMISSION_CODE = 1 val DEFAULT_ZOOM_LEVEL = 17f val CITY_HALL = LatLng(37.5662952, 126.97794509999994) var googleMap: GoogleMap? = null override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) mapView.onCreate(savedInstanceState) if (checkPermissions()) { initMap() } else { ActivityCompat.requestPermissions(this, PERMISSIONS, REQUEST_PERMISSION_CODE) } myLocationButton.setOnClickListener { onMyLocationButtonClick() } } override fun onRequestPermissionsResult(requestCode: Int, permissions: Array, grantResults: IntArray) { super.onRequestPermissionsResult(requestCode, permissions, grantResults) initMap() } private fun checkPermissions(): Boolean { for (permission in PERMISSIONS) { if (ActivityCompat.checkSelfPermission(this, permission) != PackageManager.PERMISSION_GRANTED) { return false } } return true } @SuppressLint(“MissingPermission”) fun initMap() { mapView.getMapAsync { googleMap = it it.uiSettings.isMyLocationButtonEnabled = false when { checkPermissions() -> { it.isMyLocationEnabled = true it.moveCamera(CameraUpdateFactory.newLatLngZoom(getMyLocation(), DEFAULT_ZOOM_LEVEL)) } else -> { it.moveCamera(CameraUpdateFactory.newLatLngZoom(CITY_HALL, DEFAULT_ZOOM_LEVEL)) } } } } @SuppressLint(“MissingPermission”) fun getMyLocation(): LatLng { val locationProvider: String = LocationManager.GPS_PROVIDER val locationManager = getSystemService(Context.LOCATION_SERVICE) as LocationManager val lastKnownLocation: Location = locationManager.getLastKnownLocation(locationProvider) return LatLng(lastKnownLocation.latitude, lastKnownLocation.longitude) } private fun onMyLocationButtonClick() { when { checkPermissions() -> googleMap?.moveCamera( CameraUpdateFactory.newLatLngZoom(getMyLocation(), DEFAULT_ZOOM_LEVEL) ) else -> Toast.makeText(applicationContext, “위치사용권한 설정에 동의해주세요”, Toast.LENGTH_LONG).show() } } override fun onResume() { super.onResume() mapView.onResume() } override fun onPause() { super.onPause() mapView.onPause() } override fun onDestroy() { super.onDestroy() mapView.onDestroy() } override fun onLowMemory() { super.onLowMemory() mapView.onLowMemory() } }

실행을 하게 되면 구글 맵이 나오게 됩니다.

예제 코드

https://github.com/Im-Tae/Blog_Example/tree/master/Android/Google_Map_Example

반응형

[android studio] google maps API 사용방법 정리

728×90

SMALL

구글 맵 연동을 한번 해보자.

우선 맵 api를 가져올 android studio 프로젝트가 없다면 미리 생성을 해두자.

1. https://console.cloud.google.com/apis/dashboard 주소로 들어가,

새 프로젝트를 생성하고 API 및 서비스 항목에서 API 및 서비스 사용 설정을 클릭을 한다.

리스트 중 [Maps SDK for Android] 항목을 클릭하여 [사용] 버튼을 클릭하여 API를 활성화 한다.

2. API 및 서비스에서 [사용자 인증 정보]에 들어가 [+ 사용자 인증 정보 만들기]를 클릭하면

몇개의 메뉴가 나타난다.

API 키를 클릭하면 아래와 같이 API 키가 생성된다.

하단에 있는 [키 제한]을 클릭한다.

앞에서 생성된 키의 제한 이름 등 변경가능하다.

애플리케이션 제한사항에 있는 [Android 앱]을 클릭하고 클릭 후 나타나는 [Android 앱의 사용량 제한]목록에

앱의 패키지 명과 SHA-1 서명 인증서 디지털 지문을 입력하여야 한다.

앱의 패키지명은 현재 적용시킬 앱의 package name을 넣으면 될 것이고,

“C:\Program Files\Android\Android Studio\jre\bin\keytool” -list -v -keystore “%USERPROFILE%\.android\debug.keystore” -alias androiddebugkey -storepass android -keypass android

SHA-1 서명 인증서 디지털 지문은 cmd 창을 열어 위 명령어를 넣게되면 아래와 같이 SHA-1 코드가 나타난다.

SHA1 : 이후 코드값을 복사하여 넣어주고 완료를 클릭한다.

API 제한사항에서 [키 제한]을 클릭하고 dropdown메뉴에서 [Maps SDK for Android]를 선택한 후 저장해 준다.

3. 생성된 API Key를 복사하여 Andorid Studio로 돌아와 [AndroidManifest.xml]파일의 태그 밑에

아래와 같이 추가해 준다.

…. …. ….

4. build.gradle에 들어가 dependencies 안에 아래에 있는 라이브러리를 추가해 줍니다.

implementation ‘com.google.android.gms:play-services-maps:18.0.0’ implementation ‘com.google.android.gms:play-services-location:18.0.0’

5. 맵을 추가할 화면에 fragment 를 넣어준다.

<...> <...> <....>

6. java 코드로 지도에 표시할 부분(Maker)을 설정하고, 지도를 실행해준다.

//implements OnMapReadyCallback 를 추가 public class Frag_Map extends Fragment implements OnMapReadyCallback { GoogleMap gMap; @Nullable @Override public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { ViewGroup rootview = (ViewGroup) inflater.inflate(R.layout.fragment_test, container, false); //activity일 경우 getChildFragmentManager대신 getSupportFragmentManager를 사용 SupportMapFragment mapFragment = (SupportMapFragment) getChildFragmentManager() .findFragmentById(R.id.map); mapFragment.getMapAsync(this); return rootview; } @Override public void onMapReady(@NonNull GoogleMap googleMap) { gMap = googleMap; String str_loc_Nm = “장소명”; double dbl_Lat = (지도상 위도값); double dbl_Lon = (지도상 경도값); String str_loc_DescNm = “장소설명”; LatLng Location = new LatLng(dbl_Lat, dbl_Lon); //지도에 표시할 Maker 만들기 MarkerOptions markerOptions = new MarkerOptions(); markerOptions.position(Location); markerOptions.title(str_loc_Nm); markerOptions.snippet(str_loc_DescNm); gMap.addMarker(markerOptions); //지도를 해당 위치로 이동, 줌 배수 설정 gMap.moveCamera(CameraUpdateFactory.newLatLngZoom(Location, 10)); } }

앱으로 실행하여 확인 결과 원하는 결과를 얻을 수 있었다.

728×90

LIST

[Java][Android] 구글맵 빠르게 적용하기

이번 포스팅에선 스틱코드를 사용해서 구글맵을 앱에 적용하는 방법에 대해 포스팅하겠습니다.

앱을 키면 서울 부분에 마커가 찍혀 있는 지도를 보여주는 예제를 만들어 보겠습니다.

포스팅에서 사용된 모든 코드는 아래의 스틱코드 포스팅에서 확인하실 수 있습니다.

stickode.com/detail.html?no=2187

먼저 구글맵 API를 사용하기 위해 아래의 웹 페이지에 접속해서 프로젝트를 생성해야 합니다.

console.cloud.google.com/home/dashboard?folder=&organizationId=&project=our-shield-259208

위의 주소로 접속해서 구글 클라우드 플랫폼 우측을 클릭하면, 아래와 같은 화면이 나오며 프로젝트 생성이 가능합니다.

만약 생성 가능한 프로젝트 할당량을 모두 채웠다면 새 프로젝트를 만들 수 없으니 만들어둔 게 많다면 삭제한 후 진행해야 합니다.

프로젝트 이름을 설정한 후 만들기 버튼을 누르면 아래와 같은 화면이 나옵니다.

여기서 왼쪽 상단의 햄버거 버튼을 눌러 API 및 서비스 > 대시보드 순서로 클릭한 다음, 화면 상단의 API 및 서비스 사용 설정을 클릭합니다.

그러면 API들을 검색할 수 있는 화면이 나오는데 검색창에 maps sdk for android를 검색한 다음, 이것을 사용 설정합니다.

다음으로 API 및 서비스 > 사용자 인증 정보를 클릭해서 화면 상단의 사용자 인증 정보 만들기를 클릭하고 API 키를 클릭해 API 키를 생성해줍니다.

이 때 생성되는 API 키는 어딘가에 잘 보관해 둡니다. 그리고 우측 하단의 키 제한을 누르면 API 키 사용에 제한을 둘 수도 있는데 지금은 패스하겠습니다.

이제 안드로이드 스튜디오를 켜서 구글맵 API를 적용할 프로젝트를 열고, 매니페스트에 아래 코드를 추가합니다.

태그 안의 어느 곳이든 저 태그를 작성하고, value 우측에 위에서 확인한 API 키를 입력해줍니다.

그리고 아래의 의존성 문구를 앱 수준 gradle 파일에 추가해줍니다.

implementation ‘com.google.android.gms:play-services-maps:17.0.0’ implementation ‘com.google.android.gms:play-services-location:17.0.0’

다음으로 XML 파일을 먼저 코딩해줍니다.

구글맵만 보여줄 프래그먼트만 있는 간단한 형태입니다.

다음으로 자바 파일을 코딩해줍니다.

import android.os.Bundle; import androidx.appcompat.app.AppCompatActivity; import com.google.android.gms.maps.CameraUpdateFactory; import com.google.android.gms.maps.GoogleMap; import com.google.android.gms.maps.OnMapReadyCallback; import com.google.android.gms.maps.SupportMapFragment; import com.google.android.gms.maps.model.LatLng; import com.google.android.gms.maps.model.Marker; import com.google.android.gms.maps.model.MarkerOptions; public class MainActivity extends AppCompatActivity implements OnMapReadyCallback { private GoogleMap map; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map); mapFragment.getMapAsync(MainActivity.this); } @Override public void onMapReady(GoogleMap googleMap) { map = googleMap; LatLng seoul = new LatLng(37.56, 126.97); MarkerOptions options = new MarkerOptions(); options.position(seoul) .title(“서울”) .snippet(“한국의 수도”); map.addMarker(options); map.moveCamera(CameraUpdateFactory.newLatLngZoom(seoul, 10)); } }

앱을 빌드하면 아래와 같이 서울에 마커가 찍혀있는 화면이 출력됩니다.

마커를 클릭하면 위에서 작성한 대로 서울, 한국의 수도가 나오는 걸 볼 수 있습니다.

안드로이드 스튜디오 구글 맵 | 안드로이드 앱 개발 – 구글지도를 표시하고, Api 키 안전하게 사용하는 방법 최근 답변 221개

당신은 주제를 찾고 있습니까 “안드로이드 스튜디오 구글 맵 – 안드로이드 앱 개발 – 구글지도를 표시하고, API 키 안전하게 사용하는 방법“? 다음 카테고리의 웹사이트 you.xosotanphat.com 에서 귀하의 모든 질문에 답변해 드립니다: https://you.xosotanphat.com/blog. 바로 아래에서 답을 찾을 수 있습니다. 작성자 슬기로운코딩생활 이(가) 작성한 기사에는 조회수 11,214회 및 좋아요 127개 개의 좋아요가 있습니다.

여기에서 이 주제에 대한 비디오를 시청하십시오. 주의 깊게 살펴보고 읽고 있는 내용에 대한 피드백을 제공하세요!

구글 클라우드 서비스에서 제공하는 구글맵 SDK를 사용하면 전세계 어디든지 지도를 표시하고 그 위에 원하는 마커를 표시할 수 있습니다. 구글 클라우드 서비스에서 API 키를 발급하고 안전하게 사용하기 위해 키 사용에 여러가지 제한을 두는 방법을 설명합니다. 또한 구글 지도 위에 마커를 표시하고, GPS를 통해 현재 위치를 탐색하기 위한 버튼을 추가하는 방법도 함께 설명합니다.

깃허브 – https://github.com/wonderful-coding-life/sample.google.map

Andro 스튜디오에서 다음을 사용하여 Google 지도 프로젝트를 만듭니다. Cloud Console에서 설정하기; 앱에 API 키 추가 …

+ 여기에 더 보기

Source: developers.google.com

Date Published: 2/27/2021

View: 5378

줌을 하는 함수인데 사용하면 지도가 엉뚱한 곳으로 이동합니다. 2021. 5. 11 Andro Studio 4.1.3에서 테스트. 2022. 6. 18 Andro API 32에서 테스트 …

+ 여기에 표시

Source: webnautes.tistory.com

Date Published: 8/20/2022

View: 8458

구글 Map API를 사용하여 Andro Studio에 지도를 삽입해보자. 1. Google APIs. https://console.developers.google.com/apis/dashboard.

+ 여기를 클릭

Source: sothecode.tistory.com

Date Published: 5/2/2022

View: 8844

구글 맵 적용. 먼저 build.gradle에 아래 코드를 추가해줍니다. implementation ‘com.google.andro.gms:play- …

+ 여기에 더 보기

Source: imleaf.tistory.com

Date Published: 4/30/2022

View: 955

구글 맵 연동을 한번 해보자. 우선 맵 api를 가져올 andro studio 프로젝트가 없다면 미리 생성을 해두자.

+ 여기에 표시

Source: textbox.tistory.com

Date Published: 12/2/2021

View: 884

다시 메인화면에서 라이브러리를 눌러줍니다. 지도에서 Maps SDK for Andro를 눌러줍니다. 아래와 같이 …

+ 여기를 클릭

Source: 1d1cblog.tistory.com

Date Published: 2/29/2022

View: 4161

이제 안드로이드 스튜디오를 켜서 구글맵 API를 적용할 프로젝트를 열고, 매니페스트에 아래 코드를 추가합니다. + 여기에 자세히 보기

Source: stickode.tistory.com

Date Published: 4/19/2022

View: 6886

주제와 관련된 더 많은 사진을 참조하십시오 안드로이드 앱 개발 – 구글지도를 표시하고, API 키 안전하게 사용하는 방법. 댓글에서 더 많은 관련 이미지를 보거나 필요한 경우 더 많은 관련 기사를 볼 수 있습니다.

Android 스튜디오용 Google 지도 템플릿을 사용하여 지도를 표시하는 Android 앱을 만듭니다. 설정할 기존 Android 스튜디오 프로젝트가 있는 경우에는 프로젝트 구성을 참조하세요.

이 빠른 시작은 자바 또는 Kotlin을 사용한 기본 Android 개발에 익숙한 개발자를 대상으로 합니다.

개발 환경 설정하기

Android 기기 설정하기

Android용 Maps SDK를 사용하는 앱을 실행하려면 Google API를 포함하는 Android 4.0 이상의 Android 기기 또는 에뮬레이터에 Android용 Maps SDK를 배포해야 합니다.

Android 기기를 사용하려면 하드웨어 기기에서 앱 실행의 안내를 따르세요.

Android Emulator를 사용하려면 Android 스튜디오와 함께 제공되는 Android Virtual Device(AVD) Manager를 이용해 가상 기기를 만들고 에뮬레이터를 설치할 수 있습니다. 참고:Android Emulator를 사용하는 경우 Play 스토어 열 아래 표시된 Play 아이콘 이 있는 기기를 선택해야 합니다. 이 아이콘은 프로필이 CTS를 완전히 준수하며 Play 스토어 앱이 포함된 시스템 이미지를 사용할 수 있음을 나타냅니다.

Android 스튜디오에서 다음을 사용하여 Google 지도 프로젝트를 만듭니다.

Android 스튜디오를 열고 Welcome to Android Studio 창에서 Create New Project를 클릭합니다. New Project 창의 Phone and Tablet 카테고리에서 Google Maps Activity를 선택하고 Next를 클릭합니다. Google Maps Activity 양식을 작성합니다. Language 를 자바 또는 Kotlin으로 설정합니다. 두 언어 모두 Android용 Maps SDK에서 완벽하게 지원됩니다. Kotlin에 관한 자세한 내용은 Kotlin을 사용한 Android 앱 개발을 참고하세요.

Minimum SDK를 테스트 기기와 호환되는 SDK 버전으로 설정합니다. Android용 Maps SDK 버전 18.0.x, Android API 수준 19(Android 4.4, KitKat) 이상)에 필요한 최소 버전보다 높은 버전을 선택해야 합니다. SDK 버전 요구사항에 대한 최신 정보는 출시 노트를 참조하세요. 참고: 어떤 SDK 버전을 선택해야 할지 잘 모르겠다면 선택과 관련된 도움말 지원되는 Android SDK의 배포 정보를 표시하는 링크입니다. 예를 들어 API 19: Android 4.4 (KitKat)를 선택하면 Android 기기의 99% 이상에서 앱이 실행되어야 합니다. Finish를 클릭합니다. Android 스튜디오가 Gradle을 시작하고 프로젝트를 빌드합니다. 다소 시간이 걸릴 수 있습니다. 빌드가 완료되면 Android 스튜디오에서 AndroidManifest.xml 및 MapsActivity 파일을 엽니다. 활동은 이름이 다를 수는 있지만 설정 중에 구성한 활동입니다. AndroidManifest.xml 파일에는 Google Maps API 키를 가져온 다음 local.properties 파일에 추가하는 방법에 대한 안내가 포함되어 있습니다. API 키를 AndroidManifest.xml 파일에 추가하지 마세요. 그렇게 하면 API 키가 안전하지 못한 방식으로 저장됩니다. 대신 다음 섹션의 안내에 따라 Cloud 프로젝트를 만들고 API 키를 구성합니다.

Cloud Console에서 설정하기

다음 탭을 차례로 클릭하여 필요한 Cloud Console 설정 단계를 완료합니다.

앱에 API 키 추가

이 섹션에서는 앱이 더욱 안전하게 참조할 수 있도록 API 키를 저장하는 방법을 설명합니다. API 키는 버전 제어 시스템에 등록하면 안 되며, 프로젝트의 루트 디렉터리에 있는 local.properties 파일에 저장하는 것이 좋습니다. local.properties 파일에 관한 자세한 내용은 Gradle 속성 파일을 참고하세요.

이 작업을 간소화하려면 Android용 Secrets Gradle 플러그인을 사용하는 것이 좋습니다. 플러그인을 설치하여 API 키를 저장하는 방법은 다음과 같습니다.

Android 스튜디오에서 루트 수준 build.gradle 파일을 열고 다음 코드를 buildscript 아래 dependencies 요소에 추가합니다. plugins { // … id ‘com.google.android.libraries.mapsplatform.secrets-gradle-plugin’ version ‘2.0.1’ apply false } 그런 다음 앱 수준 build.gradle 파일을 열고 plugins 요소에 다음 코드를 추가합니다. id ‘com.google.android.libraries.mapsplatform.secrets-gradle-plugin’ 파일을 저장하고 프로젝트를 Gradle과 동기화합니다. 프로젝트 수준 디렉터리에서 local.properties 를 열고 다음 코드를 추가합니다. YOUR_API_KEY 를 API 키로 변경합니다. MAPS_API_KEY= YOUR_API_KEY 파일을 저장합니다. AndroidManifest.xml 파일에서 com.google.android.geo.API_KEY 로 이동한 후 android:value attribute 를 다음과 같이 업데이트합니다.

참고: 위의 내용처럼, com.google.android.geo.API_KEY 는 API 키의 권장 메타데이터 이름입니다. 이 이름의 키는 Android 플랫폼에서 Android용 Maps SDK 등 여러 Google 지도 기반 API를 인증하는 데 사용할 수 있습니다. 이전 버전과의 호환성을 위해 API에서는 com.google.android.maps.v2.API_KEY 이름도 지원합니다. 이 기존 이름을 사용하면 Android 지도 API v2만 인증할 수 있습니다. 애플리케이션에서는 API 키 메타데이터 이름을 하나만 지정할 수 있습니다. 두 개가 모두 지정되면 API에서 예외가 발생합니다.

코드 보기

템플릿에서 제공되는 코드를 살펴봅니다. 특히 Android 스튜디오 프로젝트에서 다음 파일을 살펴봅니다.

지도 활동 파일

지도 활동 파일은 앱의 기본 활동으로, 지도를 관리하고 표시하기 위한 코드를 포함합니다. 기본적으로 활동을 정의하는 파일의 이름은 MapsActivity.java 로 지정되거나, Kotlin을 앱의 언어로 설정하는 경우에는 MapsActivity.kt 로 지정됩니다.

지도 활동의 기본 요소는 다음과 같습니다.

SupportMapFragment 객체는 지도의 수명 주기를 관리하며 앱 UI의 상위 요소입니다.

GoogleMap 객체는 지도 데이터 및 뷰에 대한 액세스 권한을 제공합니다. Android용 Maps SDK의 기본 클래스입니다. 지도 객체 가이드에서 SupportMapFragment 객체와 GoogleMap 객체를 자세히 설명합니다.

moveCamera 함수는 오스트레일리아 시드니의 LatLng 좌표에 지도의 중심을 맞춥니다. 지도를 추가할 때 가장 먼저 구성해야 하는 설정은 지도 위치 및 카메라 설정(예:보기 각도, 지도 방향, 확대/축소 수준)입니다. 자세한 내용은 카메라 및 뷰 가이드를 참고하세요.

addMarker 함수가 시드니 좌표에 마커를 추가합니다. 자세한 내용은 마커 가이드를 참조하세요.

지도 활동 파일에는 다음 코드가 포함됩니다.

자바 import android.os.Bundle; import androidx.appcompat.app.AppCompatActivity; import com.google.android.gms.maps.CameraUpdateFactory; import com.google.android.gms.maps.GoogleMap; import com.google.android.gms.maps.OnMapReadyCallback; import com.google.android.gms.maps.SupportMapFragment; import com.google.android.gms.maps.model.LatLng; import com.google.android.gms.maps.model.MarkerOptions; public class MapsActivity extends AppCompatActivity implements OnMapReadyCallback { private GoogleMap mMap; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_maps); // Obtain the SupportMapFragment and get notified when the map is ready to be used. SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager() .findFragmentById(R.id.map); mapFragment.getMapAsync(this); } /** * Manipulates the map once available. * This callback is triggered when the map is ready to be used. * This is where we can add markers or lines, add listeners or move the camera. In this case, * we just add a marker near Sydney, Australia. * * If Google Play services is not installed on the device, the user will be prompted to install * it inside the SupportMapFragment. This method will only be triggered once the user has * installed Google Play services and returned to the app. */ @Override public void onMapReady(GoogleMap googleMap) { mMap = googleMap; // Add a marker in Sydney and move the camera LatLng sydney = new LatLng(-34, 151); mMap.addMarker(new MarkerOptions() .position(sydney) .title(“Marker in Sydney”)); mMap.moveCamera(CameraUpdateFactory.newLatLng(sydney)); } } Kotlin import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import com.google.android.gms.maps.CameraUpdateFactory import com.google.android.gms.maps.GoogleMap import com.google.android.gms.maps.OnMapReadyCallback import com.google.android.gms.maps.SupportMapFragment import com.google.android.gms.maps.model.LatLng import com.google.android.gms.maps.model.MarkerOptions internal class MapsActivity : AppCompatActivity(), OnMapReadyCallback { private lateinit var mMap: GoogleMap override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_maps) // Obtain the SupportMapFragment and get notified when the map is ready to be used. val mapFragment = supportFragmentManager .findFragmentById(R.id.map) as SupportMapFragment mapFragment.getMapAsync(this) } /** * Manipulates the map once available. * This callback is triggered when the map is ready to be used. * This is where we can add markers or lines, add listeners or move the camera. In this case, * we just add a marker near Sydney, Australia. * If Google Play services is not installed on the device, the user will be prompted to install * it inside the SupportMapFragment. This method will only be triggered once the user has * installed Google Play services and returned to the app. */ override fun onMapReady(googleMap: GoogleMap) { mMap = googleMap // Add a marker in Sydney and move the camera val sydney = LatLng(-34.0, 151.0) mMap.addMarker(MarkerOptions() .position(sydney) .title(“Marker in Sydney”)) mMap.moveCamera(CameraUpdateFactory.newLatLng(sydney)) } }

모듈 Gradle 파일

모듈 build.gradle 파일에는 Android용 Maps SDK에서 요구하는 다음과 같은 지도 종속 항목이 포함됩니다.

dependencies { implementation ‘com.google.android.gms:play-services-maps:18.0.2’ // … }

참고: 정확한 버전은 Android용 Maps SDK의 현재 버전에 따라 변경될 수 있습니다.

지도 종속 항목 관리에 대한 자세한 내용은 버전 관리를 참조하세요.

XML 레이아웃 파일

activity_maps.xml 파일은 앱 UI의 구조를 정의하는 XML 레이아웃 파일입니다. 이 파일은 res/layout 디렉터리에 있습니다. activity_maps.xml 파일은 다음 요소를 포함하는 프래그먼트를 선언합니다.

tools:context 는 프래그먼트의 기본 활동을 지도 활동 파일에 정의된 MapsActivity 로 설정합니다.

는 프래그먼트의 기본 활동을 지도 활동 파일에 정의된 로 설정합니다. android:name 은 프래그먼트의 클래스 이름을 지도 활동 파일에서 사용하는 프래그먼트 유형인 SupportMapFragment 로 설정합니다.

XML 레이아웃 파일에는 다음 코드가 포함되어 있습니다.

앱 배포 및 실행하기

앱을 성공적으로 실행하면 다음 스크린샷에서처럼 중심에 오스트레일리아 시드니가 있고 시드니에 마커가 표시된 지도가 나타납니다.

앱을 배포하고 실행하려면 다음 안내를 따르세요.

Android 스튜디오에서 Run 메뉴 옵션(또는 재생 버튼 아이콘)을 클릭하여 앱을 실행합니다. 기기를 선택하라는 메시지가 나타나면 다음 옵션 중 하나를 선택합니다. 컴퓨터에 연결된 Android 기기를 선택합니다.

또는 Launch emulator 라디오 버튼을 선택하고 설정한 가상 기기를 선택합니다. OK를 클릭합니다. Android 스튜디오에서 Gradle을 시작하여 앱을 빌드한 후 기기 또는 에뮬레이터에 결과를 표시합니다. 앱이 시작되기까지 몇 분 정도 걸릴 수 있습니다.

다음 단계

안드로이드 스튜디오 구글 맵 | 안드로이드 앱 만들기 #24 구글맵 (Google Map) – 쉽게 앱 만드는 방법 (현직 개발자 설명) , Android Studio Easy Tutorial 인기 답변 업데이트

당신은 주제를 찾고 있습니까 “안드로이드 스튜디오 구글 맵 – 안드로이드 앱 만들기 #24 구글맵 (google map) – 쉽게 앱 만드는 방법 (현직 개발자 설명) , android studio easy tutorial“? 다음 카테고리의 웹사이트 you.1111.com.vn 에서 귀하의 모든 질문에 답변해 드립니다: https://you.1111.com.vn/blog. 바로 아래에서 답을 찾을 수 있습니다. 작성자 hongdroid홍드로이드 이(가) 작성한 기사에는 조회수 19,120회 및 좋아요 134개 개의 좋아요가 있습니다.

여기에서 이 주제에 대한 비디오를 시청하십시오. 주의 깊게 살펴보고 읽고 있는 내용에 대한 피드백을 제공하세요!

★★★홍드로이드의 취준생을 위한 앱 강의

https://class101.page.link/QTDj

★★★홍드로이드의 수익창출 앱 강의

https://edu.goorm.io/lecture/18156/홍드로이드의-수익창출-앱-개발

★★★홍드로이드 멤버십 가입

https://www.youtube.com/channel/UCEdsGM2ALcUGkUCNSMAthLg/join

준비물 : 안드로이드 스마트폰, USB, 컴퓨터

CMD(명령프롬프트 창)에서 SHA1 서명 인증키 받는 커맨드

\”C:\\Program Files\\Android\\Android Studio\\jre\\bin\\keytool\” -list -v -keystore \”%USERPROFILE%\\.android\\debug.keystore\” -alias androiddebugkey -storepass android -keypass android

안녕하세요 홍드로이드 입니다.

이번 영상은 안드로이드 스튜디오 프로그램을 이용하여

초 간단 앱 생성 과정을 설명 드리는 영상 입니다 !!

비 전공자, 취준생들도 보실 수 있게 매우매우 쉽게

설명 드렸습니다…

이번 편은 안드로이드 구글 API를 이용하여 구글맵을 가져오고

위도 경도 값을받아와 마커를 찍는 방법에 대하여

간단히 설명해 보았습니다.

시청 해주신 모든분들 감사드리며,

구독 \u0026 좋아요는 저를 힘이나게 한답니다

모두들사랑해요 ! ♡

==============================

홍드로이드 질문\u0026답변 카카오 오픈채팅 링크

https://open.kakao.com/o/groabZqb

후원 (Toonation) : https://toon.at/donate/636831676376291790

#안드로이드 #AndroidStudio #앱만드는법

Andro 스튜디오에서 다음을 사용하여 Google 지도 프로젝트를 만듭니다. Cloud Console에서 설정하기; 앱에 API 키 추가 …

+ 여기에 더 보기

Source: developers.google.com

Date Published: 1/9/2021

View: 3117

줌을 하는 함수인데 사용하면 지도가 엉뚱한 곳으로 이동합니다. 2021. 5. 11 Andro Studio 4.1.3에서 테스트. 2022. 6. 18 Andro API 32에서 테스트 …

+ 여기에 자세히 보기

Source: webnautes.tistory.com

Date Published: 2/3/2021

View: 1982

구글 Map API를 사용하여 Andro Studio에 지도를 삽입해보자. 1. Google APIs. https://console.developers.google.com/apis/dashboard.

+ 여기에 더 보기

Source: sothecode.tistory.com

Date Published: 2/30/2022

View: 2752

구글 맵 적용. 먼저 build.gradle에 아래 코드를 추가해줍니다. implementation ‘com.google.andro.gms:play- …

+ 여기에 자세히 보기

Source: imleaf.tistory.com

Date Published: 1/30/2022

View: 7083

구글 맵 연동을 한번 해보자. 우선 맵 api를 가져올 andro studio 프로젝트가 없다면 미리 생성을 해두자.

+ 더 읽기

Source: textbox.tistory.com

Date Published: 3/4/2021

View: 7067

다시 메인화면에서 라이브러리를 눌러줍니다. 지도에서 Maps SDK for Andro를 눌러줍니다. 아래와 같이 …

+ 여기에 더 보기

Source: 1d1cblog.tistory.com

Date Published: 11/4/2022

View: 4455

이제 안드로이드 스튜디오를 켜서 구글맵 API를 적용할 프로젝트를 열고, 매니페스트에 아래 코드를 추가합니다. + 여기에 보기

Source: stickode.tistory.com

Date Published: 11/21/2021

View: 2551

주제와 관련된 더 많은 사진을 참조하십시오 안드로이드 앱 만들기 #24 구글맵 (google map) – 쉽게 앱 만드는 방법 (현직 개발자 설명) , android studio easy tutorial. 댓글에서 더 많은 관련 이미지를 보거나 필요한 경우 더 많은 관련 기사를 볼 수 있습니다.

Android 스튜디오용 Google 지도 템플릿을 사용하여 지도를 표시하는 Android 앱을 만듭니다. 설정할 기존 Android 스튜디오 프로젝트가 있는 경우에는 프로젝트 구성을 참조하세요.

이 빠른 시작은 자바 또는 Kotlin을 사용한 기본 Android 개발에 익숙한 개발자를 대상으로 합니다.

개발 환경 설정하기

Android 기기 설정하기

Android용 Maps SDK를 사용하는 앱을 실행하려면 Google API를 포함하는 Android 4.0 이상의 Android 기기 또는 에뮬레이터에 Android용 Maps SDK를 배포해야 합니다.

Android 기기를 사용하려면 하드웨어 기기에서 앱 실행의 안내를 따르세요.

Android Emulator를 사용하려면 Android 스튜디오와 함께 제공되는 Android Virtual Device(AVD) Manager를 이용해 가상 기기를 만들고 에뮬레이터를 설치할 수 있습니다. 참고:Android Emulator를 사용하는 경우 Play 스토어 열 아래 표시된 Play 아이콘 이 있는 기기를 선택해야 합니다. 이 아이콘은 프로필이 CTS를 완전히 준수하며 Play 스토어 앱이 포함된 시스템 이미지를 사용할 수 있음을 나타냅니다.

Android 스튜디오에서 다음을 사용하여 Google 지도 프로젝트를 만듭니다.

Android 스튜디오를 열고 Welcome to Android Studio 창에서 Create New Project를 클릭합니다. New Project 창의 Phone and Tablet 카테고리에서 Google Maps Activity를 선택하고 Next를 클릭합니다. Google Maps Activity 양식을 작성합니다. Language 를 자바 또는 Kotlin으로 설정합니다. 두 언어 모두 Android용 Maps SDK에서 완벽하게 지원됩니다. Kotlin에 관한 자세한 내용은 Kotlin을 사용한 Android 앱 개발을 참고하세요.

Minimum SDK를 테스트 기기와 호환되는 SDK 버전으로 설정합니다. Android용 Maps SDK 버전 18.0.x, Android API 수준 19(Android 4.4, KitKat) 이상)에 필요한 최소 버전보다 높은 버전을 선택해야 합니다. SDK 버전 요구사항에 대한 최신 정보는 출시 노트를 참조하세요. 참고: 어떤 SDK 버전을 선택해야 할지 잘 모르겠다면 선택과 관련된 도움말 지원되는 Android SDK의 배포 정보를 표시하는 링크입니다. 예를 들어 API 19: Android 4.4 (KitKat)를 선택하면 Android 기기의 99% 이상에서 앱이 실행되어야 합니다. Finish를 클릭합니다. Android 스튜디오가 Gradle을 시작하고 프로젝트를 빌드합니다. 다소 시간이 걸릴 수 있습니다. 빌드가 완료되면 Android 스튜디오에서 AndroidManifest.xml 및 MapsActivity 파일을 엽니다. 활동은 이름이 다를 수는 있지만 설정 중에 구성한 활동입니다. AndroidManifest.xml 파일에는 Google Maps API 키를 가져온 다음 local.properties 파일에 추가하는 방법에 대한 안내가 포함되어 있습니다. API 키를 AndroidManifest.xml 파일에 추가하지 마세요. 그렇게 하면 API 키가 안전하지 못한 방식으로 저장됩니다. 대신 다음 섹션의 안내에 따라 Cloud 프로젝트를 만들고 API 키를 구성합니다.

Cloud Console에서 설정하기

다음 탭을 차례로 클릭하여 필요한 Cloud Console 설정 단계를 완료합니다.

앱에 API 키 추가

이 섹션에서는 앱이 더욱 안전하게 참조할 수 있도록 API 키를 저장하는 방법을 설명합니다. API 키는 버전 제어 시스템에 등록하면 안 되며, 프로젝트의 루트 디렉터리에 있는 local.properties 파일에 저장하는 것이 좋습니다. local.properties 파일에 관한 자세한 내용은 Gradle 속성 파일을 참고하세요.

이 작업을 간소화하려면 Android용 Secrets Gradle 플러그인을 사용하는 것이 좋습니다. 플러그인을 설치하여 API 키를 저장하는 방법은 다음과 같습니다.

Android 스튜디오에서 루트 수준 build.gradle 파일을 열고 다음 코드를 buildscript 아래 dependencies 요소에 추가합니다. plugins { // … id ‘com.google.android.libraries.mapsplatform.secrets-gradle-plugin’ version ‘2.0.1’ apply false } 그런 다음 앱 수준 build.gradle 파일을 열고 plugins 요소에 다음 코드를 추가합니다. id ‘com.google.android.libraries.mapsplatform.secrets-gradle-plugin’ 파일을 저장하고 프로젝트를 Gradle과 동기화합니다. 프로젝트 수준 디렉터리에서 local.properties 를 열고 다음 코드를 추가합니다. YOUR_API_KEY 를 API 키로 변경합니다. MAPS_API_KEY= YOUR_API_KEY 파일을 저장합니다. AndroidManifest.xml 파일에서 com.google.android.geo.API_KEY 로 이동한 후 android:value attribute 를 다음과 같이 업데이트합니다.

참고: 위의 내용처럼, com.google.android.geo.API_KEY 는 API 키의 권장 메타데이터 이름입니다. 이 이름의 키는 Android 플랫폼에서 Android용 Maps SDK 등 여러 Google 지도 기반 API를 인증하는 데 사용할 수 있습니다. 이전 버전과의 호환성을 위해 API에서는 com.google.android.maps.v2.API_KEY 이름도 지원합니다. 이 기존 이름을 사용하면 Android 지도 API v2만 인증할 수 있습니다. 애플리케이션에서는 API 키 메타데이터 이름을 하나만 지정할 수 있습니다. 두 개가 모두 지정되면 API에서 예외가 발생합니다.

코드 보기

템플릿에서 제공되는 코드를 살펴봅니다. 특히 Android 스튜디오 프로젝트에서 다음 파일을 살펴봅니다.

지도 활동 파일

지도 활동 파일은 앱의 기본 활동으로, 지도를 관리하고 표시하기 위한 코드를 포함합니다. 기본적으로 활동을 정의하는 파일의 이름은 MapsActivity.java 로 지정되거나, Kotlin을 앱의 언어로 설정하는 경우에는 MapsActivity.kt 로 지정됩니다.

지도 활동의 기본 요소는 다음과 같습니다.

SupportMapFragment 객체는 지도의 수명 주기를 관리하며 앱 UI의 상위 요소입니다.

GoogleMap 객체는 지도 데이터 및 뷰에 대한 액세스 권한을 제공합니다. Android용 Maps SDK의 기본 클래스입니다. 지도 객체 가이드에서 SupportMapFragment 객체와 GoogleMap 객체를 자세히 설명합니다.

moveCamera 함수는 오스트레일리아 시드니의 LatLng 좌표에 지도의 중심을 맞춥니다. 지도를 추가할 때 가장 먼저 구성해야 하는 설정은 지도 위치 및 카메라 설정(예:보기 각도, 지도 방향, 확대/축소 수준)입니다. 자세한 내용은 카메라 및 뷰 가이드를 참고하세요.

addMarker 함수가 시드니 좌표에 마커를 추가합니다. 자세한 내용은 마커 가이드를 참조하세요.

지도 활동 파일에는 다음 코드가 포함됩니다.

자바 import android.os.Bundle; import androidx.appcompat.app.AppCompatActivity; import com.google.android.gms.maps.CameraUpdateFactory; import com.google.android.gms.maps.GoogleMap; import com.google.android.gms.maps.OnMapReadyCallback; import com.google.android.gms.maps.SupportMapFragment; import com.google.android.gms.maps.model.LatLng; import com.google.android.gms.maps.model.MarkerOptions; public class MapsActivity extends AppCompatActivity implements OnMapReadyCallback { private GoogleMap mMap; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_maps); // Obtain the SupportMapFragment and get notified when the map is ready to be used. SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager() .findFragmentById(R.id.map); mapFragment.getMapAsync(this); } /** * Manipulates the map once available. * This callback is triggered when the map is ready to be used. * This is where we can add markers or lines, add listeners or move the camera. In this case, * we just add a marker near Sydney, Australia. * * If Google Play services is not installed on the device, the user will be prompted to install * it inside the SupportMapFragment. This method will only be triggered once the user has * installed Google Play services and returned to the app. */ @Override public void onMapReady(GoogleMap googleMap) { mMap = googleMap; // Add a marker in Sydney and move the camera LatLng sydney = new LatLng(-34, 151); mMap.addMarker(new MarkerOptions() .position(sydney) .title(“Marker in Sydney”)); mMap.moveCamera(CameraUpdateFactory.newLatLng(sydney)); } } Kotlin import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import com.google.android.gms.maps.CameraUpdateFactory import com.google.android.gms.maps.GoogleMap import com.google.android.gms.maps.OnMapReadyCallback import com.google.android.gms.maps.SupportMapFragment import com.google.android.gms.maps.model.LatLng import com.google.android.gms.maps.model.MarkerOptions internal class MapsActivity : AppCompatActivity(), OnMapReadyCallback { private lateinit var mMap: GoogleMap override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_maps) // Obtain the SupportMapFragment and get notified when the map is ready to be used. val mapFragment = supportFragmentManager .findFragmentById(R.id.map) as SupportMapFragment mapFragment.getMapAsync(this) } /** * Manipulates the map once available. * This callback is triggered when the map is ready to be used. * This is where we can add markers or lines, add listeners or move the camera. In this case, * we just add a marker near Sydney, Australia. * If Google Play services is not installed on the device, the user will be prompted to install * it inside the SupportMapFragment. This method will only be triggered once the user has * installed Google Play services and returned to the app. */ override fun onMapReady(googleMap: GoogleMap) { mMap = googleMap // Add a marker in Sydney and move the camera val sydney = LatLng(-34.0, 151.0) mMap.addMarker(MarkerOptions() .position(sydney) .title(“Marker in Sydney”)) mMap.moveCamera(CameraUpdateFactory.newLatLng(sydney)) } }

모듈 Gradle 파일

모듈 build.gradle 파일에는 Android용 Maps SDK에서 요구하는 다음과 같은 지도 종속 항목이 포함됩니다.

dependencies { implementation ‘com.google.android.gms:play-services-maps:18.0.2’ // … }

참고: 정확한 버전은 Android용 Maps SDK의 현재 버전에 따라 변경될 수 있습니다.

지도 종속 항목 관리에 대한 자세한 내용은 버전 관리를 참조하세요.

XML 레이아웃 파일

activity_maps.xml 파일은 앱 UI의 구조를 정의하는 XML 레이아웃 파일입니다. 이 파일은 res/layout 디렉터리에 있습니다. activity_maps.xml 파일은 다음 요소를 포함하는 프래그먼트를 선언합니다.

tools:context 는 프래그먼트의 기본 활동을 지도 활동 파일에 정의된 MapsActivity 로 설정합니다.

는 프래그먼트의 기본 활동을 지도 활동 파일에 정의된 로 설정합니다. android:name 은 프래그먼트의 클래스 이름을 지도 활동 파일에서 사용하는 프래그먼트 유형인 SupportMapFragment 로 설정합니다.

XML 레이아웃 파일에는 다음 코드가 포함되어 있습니다.

앱 배포 및 실행하기

앱을 성공적으로 실행하면 다음 스크린샷에서처럼 중심에 오스트레일리아 시드니가 있고 시드니에 마커가 표시된 지도가 나타납니다.

앱을 배포하고 실행하려면 다음 안내를 따르세요.

Android 스튜디오에서 Run 메뉴 옵션(또는 재생 버튼 아이콘)을 클릭하여 앱을 실행합니다. 기기를 선택하라는 메시지가 나타나면 다음 옵션 중 하나를 선택합니다. 컴퓨터에 연결된 Android 기기를 선택합니다.

또는 Launch emulator 라디오 버튼을 선택하고 설정한 가상 기기를 선택합니다. OK를 클릭합니다. Android 스튜디오에서 Gradle을 시작하여 앱을 빌드한 후 기기 또는 에뮬레이터에 결과를 표시합니다. 앱이 시작되기까지 몇 분 정도 걸릴 수 있습니다.

다음 단계

Tích hợp Google Map vào ứng dụng Android

Nếu ứng dụng của bạn có các tính năng liên quan tới địa điểm, nhà hàng, khách sạn… thì việc hiển thị bản đồ là 1 điều tất yếu. Bài viết sẽ hướng dẫn bạn cách tích hợp Google Map vào ứng dụng của bạn 1 cách cơ bản nhất.

Chuẩn bị

Hướng dẫn này sử dụng Android Studio phiên bản beta 2.0 mới nhất, nếu bạn dùng bản ổn định 1.5 giao diện có thể hơi khác 1 chút.

Mở SDK manager và cài thêm gói Google Play Services:

Tạo 1 project Android mới, hoặc trong project hiện tại tạo 1 activity mới bằng trình tạo Activity của Studio.

Chọn tạo mới 1 Google Map Activity. Bước sau có thể để tên mặc định và nhấn Finish.

Studio sẽ khởi chạy Gradle và build ứng dụng của bạn. Khi hoàn thành, Studio sẽ mở ra 2 file là google_maps_api.xml và MapsActivity.java (Tên có thể khác tùy vào cách bạn đặt). Trong file google_maps_api.xml có các thông tin để có thể lấy Google Maps API key.

Bây giờ sẽ là cách để lấy được API key. Bạn có thể để ý phần ghi chú trong file google_maps_api.xml:

Lấy Certificate từ KeyTool

Bạn cần lấy một Certificate Key bởi vì bạn phải cung cấp nó cho Google Console để lấy API key cho Map.

Mở dòng nhắc lệnh và di chuyển tới path bạn đặt jre. Bây giờ gõ lệnh sau:

keytool – list – v – alias androiddebugkey – keystore % % Your path % % – storepass android – keypass android “` J * Thay thế % % your path % % với path bạn sẽ sao chép từ việc chọn Window tab , chọn Preferences tab và chọn tùy chọn Build dưới Android từ bên trái . * Sao chép debug keystore path mặc định và thay thế nó trong dòng lệnh rồi nhấn Enter . K ết quả sau sẽ xuất hiện . ! [ alt ] ( http : / / vietjack . com / android / images / googlemap_android_cmd . jpg ) Sao chép SHA1 key cho bước tiếp theo . “` Java TODO : Before you run your application , you need a Google Maps API key . To get one , follow this link , follow the directions and press “Create” at the end : https : / / console . developers . google . com / flows / enableapi ? apiid = maps_android_backend & keyType = CLIENT_SIDE_ANDROID & r = BF : 5F : F7 : A3 : C7 : CD : 2 E : 70 : 7 A : 67 : A4 : 63 : 97 : 1D : 0 B : 31 : 90 : 9F : 2 B : 04 % 3 Bcom . tuhocandroid . androidsqlite You can also add your credentials to an existing key , using this line : BF : 5F : F7 : A3 : C7 : CD : 2 E : 70 : 7 A : 67 : A4 : 63 : 97 : 1D : 0 B : 31 : 90 : 9F : 2 B : 04 ; com . tuhocandroid . androidsqlite Alternatively , follow the directions here : https : / / developers . google . com / maps / documentation / android / start#get – key Once you have your key ( it starts with “AIza” ) , replace the “google_maps_key” string in this file .

Copy đường link ở dòng thứ 3 và dán vào trình duyệt, bạn sẽ được đưa tới trang Google Developers Console để tạo project API cho ứng dụng của bạn

Nhấn vào Continue

Đổi tên API key nếu muốn và nhấn Create

Đây là key API của bạn, copy lại và dán vào dòng YOUR_KEY_HERE như thế này:

< string name = "google_maps_key" templateMergeStrategy = "preserve" translatable = "false" > AIzaSyAPLOM5_N3LJ5EWS1F3X7YitWIYDM – IlDs < / string >

Vậy là xong, hãy chạy thử project của bạn. Nó sẽ hiện ra 1 bản đồ được đánh 1 dấu đỏ ở Sydney, Úc.

Như vậy ta đã lấy được API key đồng thời tạo 1 Activity mới sử dụng duy nhất 1 Fragment hiển thị bản đồ. Dưới đây sẽ là cách thêm 1 bản đồ vào 1 activity có sẵn đầy đủ hơn sau khi sở hữu API key.

Thêm Google Map vào Activity có sẵn

Bạn có thể tham khảo code của MapsActivity để có thể tự thêm vào các Activity khác 1 cách dễ dàng:

Trong layout của activity thêm vào 1 fragment như sau:

< ? xml version = "1.0" encoding = "utf-8" ? > < fragment xmlns : android = "http://schemas.android.com/apk/res/android" android : name = "com.google.android.gms.maps.MapFragment" android : id = "@+id/map" android : layout_width = "match_parent" android : layout_height = "match_parent" / >

Thêm 1 đối tượng GoogleMap vào activity:

private GoogleMap mMap ;

Trong phần onCreate() thêm đoạn code để khởi tạo map:

@Override protected void onCreate ( Bundle savedInstanceState ) { super . onCreate ( savedInstanceState ) ; setContentView ( R . layout . activity_maps ) ; SupportMapFragment mapFragment = ( SupportMapFragment ) getSupportFragmentManager ( ) . findFragmentById ( R . id . map ) ; mapFragment . getMapAsync ( this ) ; }

Cho activity của bạn implements interface OnMapReadyCallback:

public class MapsActivity extends FragmentActivity implements OnMapReadyCallback { C ài đặt hàm onMapReady ( ) , hàm này sẽ được gọi khi hệ thống đã kết nối được tới Google Map và cho bạn 1 đối tượng GoogleMap để thao tác trên đó . L ưu nó lại để tiện sử dụng và triển khai các lệnh xử lí trên bản đồ tại đây : @Override public void onMapReady ( GoogleMap googleMap ) { mMap = googleMap ; LatLng sydney = new LatLng ( – 34 , 151 ) ; mMap . addMarker ( new MarkerOptions ( ) . position ( sydney ) . title ( “Marker in Sydney” ) ) ; mMap . moveCamera ( CameraUpdateFactory . newLatLng ( sydney ) ) ; }

1 số tương tác thường dùng trên GoogleMap

Sau đây là 1 số tương tác hay gặp nhất với GoogleMap

Đổi kiểu map

googleMap . setMapType ( GoogleMap . MAP_TYPE_HYBRID ) ; googleMap . setMapType ( GoogleMap . MAP_TYPE_NORMAL ) ; googleMap . setMapType ( GoogleMap . MAP_TYPE_SATELLITE ) ; googleMap . setMapType ( GoogleMap . MAP_TYPE_TERRAIN ) ;

Có 1 số kiểu map được cung cấp sẵn: bình thường, Hybrid, vệ tinh, địa hình, và kiểu trống. Hãy thay tham số trong hàm setMapType() bằng các hằng số MAP_TYPE_… trong class GoogleMap để thử nghiệm. Dưới đây là hình map thường, Hybrid và địa hình:

Thao tác với camera

googleMap . animateCamera ( . . . )

Hàm trên yêu cầu truyền vào 1 đối tượng CameraUpdate giúp thay đổi vị trí hiển thị trên map, zoom to nhỏ… Ta sẽ tạo đối tượng này bằng class CameraUpdateFactory. Sau đây là 1 số thao tác:

CameraUpdateFactory.zoomIn() và CameraUpdateFactory.zoomOut(): zoom to/nhỏ 1 đơn vị

CameraUpdateFactory.zoomTo(float): zoom theo tham số truyền vào, có thể âm

CameraUpdateFactory.newLatLng(LatLng): di chuyển tới vị trí theo tham số LatLng truyền vào. Ví dụ có thể thấy ở ngay phần tạo map:

LatLng sydney = new LatLng ( – 34 , 151 ) ; mMap . moveCamera ( CameraUpdateFactory . newLatLng ( sydney ) ) ;

CameraUpdateFactory.newLatLngZoom(LatLng, float): vừa di chuyển vừa zoom luôn.

Stt Phương thức & Miêu tả 1 **addCircle(CircleOptions options)**Phương thức này thêm một vòng tròn vào Map 2 addPolygon(PolygonOptions options) Phương thức này thêm một hình đa giác vào Map 3 addTileOverlay(TileOverlayOptions options) Phương thức này thêm Tile Overlay tới Map 4 animateCamera(CameraUpdate update) Phương thức này di chuyển Map theo update với một Animation 5 clear() Phương thức này gỡ bỏ mọi thứ từ Map 6 getMyLocation() Phương thức này trả về vị trí người dùng được hiển thị hiện tại 7 moveCamera(CameraUpdate update) Phương thức này tái định vị Camera tương ứng với chỉ thị được định nghĩa trong update 8 setTrafficEnabled(boolean enabled) Phương thức này toggle tầng truyền tải là on hoặc off 9 snapshot(GoogleMap.SnapshotReadyCallback callback) Phương thức này nhận một snapshot của Map 10 stopAnimation() Phương thức này dừng Camera Animation nếu có một hiệu ứng đang tiến hành

Đánh dấu – Marker

Tạo 1 marker đơn giản như sau:

map . addMarker ( new MarkerOptions ( ) . position ( new LatLng ( 10 , 10 ) ) . title ( “Hello world” ) ) ;

Hàm **addMarker() **trả về 1 đối tượng Marker , có thể lưu lại để tái sử dụng về sau.

Hàm tạo marker có thể thêm nhiều tùy biến, sau đây là 1 vài tùy biến hay dùng:

Thay màu sắc:

static final LatLng MELBOURNE = new LatLng ( – 37.813 , 144.962 ) ; Marker melbourne = mMap . addMarker ( new MarkerOptions ( ) . position ( MELBOURNE ) . icon ( BitmapDescriptorFactory . defaultMarker ( BitmapDescriptorFactory . HUE_AZURE ) ) ) ;

Thay icon: thay bằng icon có resourceId là R.drawable.arrow

private static final LatLng MELBOURNE = new LatLng ( – 37.813 , 144.962 ) ; private Marker melbourne = mMap . addMarker ( new MarkerOptions ( ) . position ( MELBOURNE ) . icon ( BitmapDescriptorFactory . fromResource ( R . drawable . arrow ) ) ) ;

Tạo 1 bảng tin nhỏ khi ấn vào marker: tiêu đề là Melbourne và nội dung Population: 4,137,400

private static final LatLng MELBOURNE = new LatLng ( – 37.813 , 144.962 ) ; private Marker melbourne = mMap . addMarker ( new MarkerOptions ( ) . position ( MELBOURNE ) . title ( “Melbourne” ) . snippet ( “Population: 4,137,400” ) ;

키워드에 대한 정보 안드로이드 스튜디오 구글 맵

다음은 Bing에서 안드로이드 스튜디오 구글 맵 주제에 대한 검색 결과입니다. 필요한 경우 더 읽을 수 있습니다.

이 기사는 인터넷의 다양한 출처에서 편집되었습니다. 이 기사가 유용했기를 바랍니다. 이 기사가 유용하다고 생각되면 공유하십시오. 매우 감사합니다!

사람들이 주제에 대해 자주 검색하는 키워드 안드로이드 앱 개발 – 구글지도를 표시하고, API 키 안전하게 사용하는 방법

  • 구글맵
  • 구글지도
  • 안드로이드
  • Google Map
  • 마커
  • 네이버지도
  • 카카오지도
  • 네비게이션
  • 위치기반
  • 튜토리얼
  • 앱강의
  • 앱개발
  • 앱만들기
  • 어플만들기
  • 앱제작
  • 안드앱제작
  • 안드로이드 스튜디오
  • 하이브리드앱
  • 초보
  • 왕초보
  • 취준
  • 취준생
  • 신입
  • 신입개발자
  • 비전공자
  • 프로그래밍
  • 오픈소스
  • 앱 유튜버
  • 안드로이드 유튜버
  • 개발자 유튜버
  • 개발자
  • 앱 개발자
  • 홍드로이드
  • 센치한개발자

안드로이드 #앱 #개발 #- #구글지도를 #표시하고, #API #키 #안전하게 #사용하는 #방법


YouTube에서 안드로이드 스튜디오 구글 맵 주제의 다른 동영상 보기

주제에 대한 기사를 시청해 주셔서 감사합니다 안드로이드 앱 개발 – 구글지도를 표시하고, API 키 안전하게 사용하는 방법 | 안드로이드 스튜디오 구글 맵, 이 기사가 유용하다고 생각되면 공유하십시오, 매우 감사합니다.

See also  선박 위치 추적 | 선박의 정보는 여기있다. (Imo Number 알아보기) 답을 믿으세요

Leave a Reply

Your email address will not be published. Required fields are marked *