SlideShare a Scribd company logo
1 of 8
2. Xamarin.Android
2.2 Hello Xamarin Android 구조?
2.2.7 Simple Intent Example
(현재 위치를 얻은 후 지도에 표시하기,
마시멜로이후 권한 획득방법 구현) part.1
탑크리에듀
http://www.topcredu.co.kr/
2.2.7 Simple Intent Example
 Android 개발자가 이용할 수 있는 130 가지 이상의 고유 권한을 사용하여
응용프로그램에서 사용할 권한을 정확히 알기 어렵다. Android
Marshmallow는 사용 권한을 단순화 할뿐만 아니라 필요한 사용 권한의 수
를 줄이기 위해 응용 프로그램 사용 권한에 대해 완전히 새로운 방향을 제
시하는 데 예제를 통해 알아보자.
 폰접근 권한을 받아오고 GPS를 통해 위치 정보를 받아, 지도를 로딩하는
방법에 대한 실습
 “GetLocation“ 라는 이름의 Xamarin.Android 프로젝트 생성
 AssemblyInfo.cs에 위치정보 서비스를 위한 두개의 권한을 허용
탑크리에듀 http://www.topcredu.co.kr/
2.2.7 Simple Intent Example
 사용자 위치를 얻기 위해 GPS를 사용해야하는 경우 ACCESS_FINE_LOCATION
및 ACCESS_COARSE_LOCATION 권한을 지정하는데 API 레벨 23(마시멜로) 이
상에서 런타임시 사용자에게 요청하게 된다.
사용자 위치를 얻기 위해 GPS를 사용해야하는 경우 ACCESS_FINE_LOCATION 및
ACCESS_COARSE_LOCATION 권한을 지정해야 했다. 사용 권한 그룹은 위치, 연락처, 전
화, 센서, SMS 및 저장소와 같은 유사한 작업을 수행하는 사용 권한을 단순화하려고 시도
하는데 앱 그룹은 현재 1 ~ 7 개의 권한을 단일 권한 그룹으로 묶는데 한 번에 그룹의 모든
권한을 요청할 수 있다.
이러한 권한 그룹 중 하나에서 찾은 권한 또는 일반으로 지정되지 않은 권한을 사용하는 경
우 사용자에게 권한을 요청해야 한다.
Geolocator Plugin은 AccessFineLocation and AccessCoarseLocation 위치 권한을 모두 필
요로하며, android.permission-group.LOCATION에 그룹화되어 있다. AndroidManifest.xml
에 이 두 가지 권한을 추가해야 하며 런타임에 요청해야 한다.
탑크리에듀 http://www.topcredu.co.kr/
[assembly: UsesPermission(Manifest.Permission.AccessFineLocation)]
[assembly: UsesPermission(Manifest.Permission.AccessCoarseLocation)]
2.2.7 Simple Intent Example
 AssemblyInfo.cs에 Geocoder 클래스를 사용하는 데 필요한 권한을 선언, 기기의
GPS 좌표를 얻기 위해 꼭 필요한 것은 아니지만 본 예제에서는 현재 위치의 번지
를 얻기 위해 사용.
탑크리에듀 http://www.topcredu.co.kr/
 AssemblyInfo.cs에 Geocoder 클래스를 사용하는 데 필요한 권한을 선언,
기기의 GPS 좌표를 얻기 위해 꼭 필요한 것은 아니지만 본 예제에서는 현재
위치의 번지를 얻기 위해 사용.
2.2.7 Simple Intent Example
탑크리에듀 http://www.topcredu.co.kr/
2.2.7 Simple Intent Example
 텍스트뷰와 버튼을 위한 UI 생성, ResourcelayoutMain.axml
탑크리에듀 http://www.topcredu.co.kr/
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:paddingTop="20dp"
android:paddingLeft="8dp"
android:paddingRight="8dp"
android:id="@+id/main_layout">
<Button
2.2.7 Simple Intent Example
탑크리에듀 http://www.topcredu.co.kr/
android:layout_width="fill_parent"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_height="wrap_content"
android:id="@+id/get_permission_button"
android:text="Get Permission" />
<Button
android:layout_width="fill_parent"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_height="wrap_content"
android:id="@+id/get_address_button"
android:text="Get Location" />
<TextView
android:layout_width="fill_parent"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_height="wrap_content"
2.2.7 Simple Intent Example
탑크리에듀 http://www.topcredu.co.kr/
android:text="Location (when available)"
android:id="@+id/location_text"
android:layout_marginBottom="15dp" />
<TextView
android:layout_width="fill_parent"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_height="wrap_content"
android:text="Address (when available)"
android:id="@+id/address_text"
android:layout_marginTop="10dp" />
<Button
android:layout_width="fill_parent"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_height="wrap_content"
android:id="@+id/get_map_button"
android:text="Get Map" />
</LinearLayout>

More Related Content

More from 탑크리에듀(구로디지털단지역3번출구 2분거리)

(WPF교육)ListBox와 Linq 쿼리를 이용한 간단한 데이터바인딩, 새창 띄우기, 이벤트 및 델리게이트를 통한 메인윈도우의 ListB...
(WPF교육)ListBox와 Linq 쿼리를 이용한 간단한 데이터바인딩, 새창 띄우기, 이벤트 및 델리게이트를 통한 메인윈도우의 ListB...(WPF교육)ListBox와 Linq 쿼리를 이용한 간단한 데이터바인딩, 새창 띄우기, 이벤트 및 델리게이트를 통한 메인윈도우의 ListB...
(WPF교육)ListBox와 Linq 쿼리를 이용한 간단한 데이터바인딩, 새창 띄우기, 이벤트 및 델리게이트를 통한 메인윈도우의 ListB...탑크리에듀(구로디지털단지역3번출구 2분거리)
 
[자마린교육/자마린실습]자바,스프링프레임워크(스프링부트) RESTful 웹서비스 구현 실습,자마린에서 스프링 웹서비스를 호출하고 응답 JS...
[자마린교육/자마린실습]자바,스프링프레임워크(스프링부트) RESTful 웹서비스 구현 실습,자마린에서 스프링 웹서비스를 호출하고 응답 JS...[자마린교육/자마린실습]자바,스프링프레임워크(스프링부트) RESTful 웹서비스 구현 실습,자마린에서 스프링 웹서비스를 호출하고 응답 JS...
[자마린교육/자마린실습]자바,스프링프레임워크(스프링부트) RESTful 웹서비스 구현 실습,자마린에서 스프링 웹서비스를 호출하고 응답 JS...탑크리에듀(구로디지털단지역3번출구 2분거리)
 
C#기초에서 윈도우, 스마트폰 앱개발 과정(c#.net, ado.net, win form, wpf, 자마린)_자마린학원_씨샵교육_WPF학원...
C#기초에서 윈도우, 스마트폰 앱개발 과정(c#.net, ado.net, win form, wpf, 자마린)_자마린학원_씨샵교육_WPF학원...C#기초에서 윈도우, 스마트폰 앱개발 과정(c#.net, ado.net, win form, wpf, 자마린)_자마린학원_씨샵교육_WPF학원...
C#기초에서 윈도우, 스마트폰 앱개발 과정(c#.net, ado.net, win form, wpf, 자마린)_자마린학원_씨샵교육_WPF학원...탑크리에듀(구로디지털단지역3번출구 2분거리)
 
자바, 웹 기초와 스프링 프레임워크 & 마이바티스 재직자 향상과정(자바학원/자바교육/자바기업출강]
자바, 웹 기초와 스프링 프레임워크 & 마이바티스 재직자 향상과정(자바학원/자바교육/자바기업출강]자바, 웹 기초와 스프링 프레임워크 & 마이바티스 재직자 향상과정(자바학원/자바교육/자바기업출강]
자바, 웹 기초와 스프링 프레임워크 & 마이바티스 재직자 향상과정(자바학원/자바교육/자바기업출강]탑크리에듀(구로디지털단지역3번출구 2분거리)
 
3. 안드로이드 애플리케이션 구성요소 3.2인텐트 part01(안드로이드학원/안드로이드교육/안드로이드강좌/안드로이드기업출강]
3. 안드로이드 애플리케이션 구성요소 3.2인텐트 part01(안드로이드학원/안드로이드교육/안드로이드강좌/안드로이드기업출강]3. 안드로이드 애플리케이션 구성요소 3.2인텐트 part01(안드로이드학원/안드로이드교육/안드로이드강좌/안드로이드기업출강]
3. 안드로이드 애플리케이션 구성요소 3.2인텐트 part01(안드로이드학원/안드로이드교육/안드로이드강좌/안드로이드기업출강]탑크리에듀(구로디지털단지역3번출구 2분거리)
 

More from 탑크리에듀(구로디지털단지역3번출구 2분거리) (20)

[wpf학원,wpf교육]닷넷, c#기반 wpf 프로그래밍 인터페이스구현 재직자 향상과정
[wpf학원,wpf교육]닷넷, c#기반 wpf 프로그래밍 인터페이스구현 재직자 향상과정[wpf학원,wpf교육]닷넷, c#기반 wpf 프로그래밍 인터페이스구현 재직자 향상과정
[wpf학원,wpf교육]닷넷, c#기반 wpf 프로그래밍 인터페이스구현 재직자 향상과정
 
(WPF교육)ListBox와 Linq 쿼리를 이용한 간단한 데이터바인딩, 새창 띄우기, 이벤트 및 델리게이트를 통한 메인윈도우의 ListB...
(WPF교육)ListBox와 Linq 쿼리를 이용한 간단한 데이터바인딩, 새창 띄우기, 이벤트 및 델리게이트를 통한 메인윈도우의 ListB...(WPF교육)ListBox와 Linq 쿼리를 이용한 간단한 데이터바인딩, 새창 띄우기, 이벤트 및 델리게이트를 통한 메인윈도우의 ListB...
(WPF교육)ListBox와 Linq 쿼리를 이용한 간단한 데이터바인딩, 새창 띄우기, 이벤트 및 델리게이트를 통한 메인윈도우의 ListB...
 
[자마린교육/자마린실습]자바,스프링프레임워크(스프링부트) RESTful 웹서비스 구현 실습,자마린에서 스프링 웹서비스를 호출하고 응답 JS...
[자마린교육/자마린실습]자바,스프링프레임워크(스프링부트) RESTful 웹서비스 구현 실습,자마린에서 스프링 웹서비스를 호출하고 응답 JS...[자마린교육/자마린실습]자바,스프링프레임워크(스프링부트) RESTful 웹서비스 구현 실습,자마린에서 스프링 웹서비스를 호출하고 응답 JS...
[자마린교육/자마린실습]자바,스프링프레임워크(스프링부트) RESTful 웹서비스 구현 실습,자마린에서 스프링 웹서비스를 호출하고 응답 JS...
 
[구로자마린학원/자마린강좌/자마린교육]3. xamarin.ios 3.3.5 추가적인 사항
[구로자마린학원/자마린강좌/자마린교육]3. xamarin.ios  3.3.5 추가적인 사항[구로자마린학원/자마린강좌/자마린교육]3. xamarin.ios  3.3.5 추가적인 사항
[구로자마린학원/자마린강좌/자마린교육]3. xamarin.ios 3.3.5 추가적인 사항
 
3. xamarin.i os 3.3 xamarin.ios helloworld 자세히 살펴보기 3.4.4 view controllers an...
3. xamarin.i os 3.3 xamarin.ios helloworld 자세히 살펴보기 3.4.4 view controllers an...3. xamarin.i os 3.3 xamarin.ios helloworld 자세히 살펴보기 3.4.4 view controllers an...
3. xamarin.i os 3.3 xamarin.ios helloworld 자세히 살펴보기 3.4.4 view controllers an...
 
5. 서브 쿼리(sub query) 5.1 서브 쿼리(sub query) 개요 5.2 단일행 서브쿼리(single row sub query)
5. 서브 쿼리(sub query) 5.1 서브 쿼리(sub query) 개요 5.2 단일행 서브쿼리(single row sub query)5. 서브 쿼리(sub query) 5.1 서브 쿼리(sub query) 개요 5.2 단일행 서브쿼리(single row sub query)
5. 서브 쿼리(sub query) 5.1 서브 쿼리(sub query) 개요 5.2 단일행 서브쿼리(single row sub query)
 
3. xamarin.i os 3.1 xamarin.ios 설치, 개발환경 3.2 xamarin.ios helloworld(단일 뷰) 실습[...
3. xamarin.i os 3.1 xamarin.ios 설치, 개발환경 3.2 xamarin.ios helloworld(단일 뷰) 실습[...3. xamarin.i os 3.1 xamarin.ios 설치, 개발환경 3.2 xamarin.ios helloworld(단일 뷰) 실습[...
3. xamarin.i os 3.1 xamarin.ios 설치, 개발환경 3.2 xamarin.ios helloworld(단일 뷰) 실습[...
 
(닷넷,자마린,아이폰실습)Xamarin.iOS HelloWorld 실습_멀티화면,화면전환_Xamarin교육/Xamarin강좌
(닷넷,자마린,아이폰실습)Xamarin.iOS HelloWorld 실습_멀티화면,화면전환_Xamarin교육/Xamarin강좌(닷넷,자마린,아이폰실습)Xamarin.iOS HelloWorld 실습_멀티화면,화면전환_Xamarin교육/Xamarin강좌
(닷넷,자마린,아이폰실습)Xamarin.iOS HelloWorld 실습_멀티화면,화면전환_Xamarin교육/Xamarin강좌
 
C#기초에서 윈도우, 스마트폰 앱개발 과정(c#.net, ado.net, win form, wpf, 자마린)_자마린학원_씨샵교육_WPF학원...
C#기초에서 윈도우, 스마트폰 앱개발 과정(c#.net, ado.net, win form, wpf, 자마린)_자마린학원_씨샵교육_WPF학원...C#기초에서 윈도우, 스마트폰 앱개발 과정(c#.net, ado.net, win form, wpf, 자마린)_자마린학원_씨샵교육_WPF학원...
C#기초에서 윈도우, 스마트폰 앱개발 과정(c#.net, ado.net, win form, wpf, 자마린)_자마린학원_씨샵교육_WPF학원...
 
자바, 웹 기초와 스프링 프레임워크 & 마이바티스 재직자 향상과정(자바학원/자바교육/자바기업출강]
자바, 웹 기초와 스프링 프레임워크 & 마이바티스 재직자 향상과정(자바학원/자바교육/자바기업출강]자바, 웹 기초와 스프링 프레임워크 & 마이바티스 재직자 향상과정(자바학원/자바교육/자바기업출강]
자바, 웹 기초와 스프링 프레임워크 & 마이바티스 재직자 향상과정(자바학원/자바교육/자바기업출강]
 
3. xamarin.i os 3.1 xamarin.ios 설치, 개발환경 3.2 xamarin.ios helloworld_자마린학원_자마린...
3. xamarin.i os 3.1 xamarin.ios 설치, 개발환경 3.2 xamarin.ios helloworld_자마린학원_자마린...3. xamarin.i os 3.1 xamarin.ios 설치, 개발환경 3.2 xamarin.ios helloworld_자마린학원_자마린...
3. xamarin.i os 3.1 xamarin.ios 설치, 개발환경 3.2 xamarin.ios helloworld_자마린학원_자마린...
 
3. 안드로이드 애플리케이션 구성요소 3.2인텐트 part01(안드로이드학원/안드로이드교육/안드로이드강좌/안드로이드기업출강]
3. 안드로이드 애플리케이션 구성요소 3.2인텐트 part01(안드로이드학원/안드로이드교육/안드로이드강좌/안드로이드기업출강]3. 안드로이드 애플리케이션 구성요소 3.2인텐트 part01(안드로이드학원/안드로이드교육/안드로이드강좌/안드로이드기업출강]
3. 안드로이드 애플리케이션 구성요소 3.2인텐트 part01(안드로이드학원/안드로이드교육/안드로이드강좌/안드로이드기업출강]
 
2. xamarin.android 2.5.3 xamarin.android .aar binding(안드로이드 .aar file을 자마린 바...
2. xamarin.android  2.5.3 xamarin.android .aar binding(안드로이드 .aar file을 자마린 바...2. xamarin.android  2.5.3 xamarin.android .aar binding(안드로이드 .aar file을 자마린 바...
2. xamarin.android 2.5.3 xamarin.android .aar binding(안드로이드 .aar file을 자마린 바...
 
유니티,Unity 엔진을 활용한 VR/AR 콘텐츠 개발 _사물인터넷(IoT) 네크워크 프로그래밍
유니티,Unity 엔진을 활용한 VR/AR 콘텐츠 개발 _사물인터넷(IoT) 네크워크 프로그래밍유니티,Unity 엔진을 활용한 VR/AR 콘텐츠 개발 _사물인터넷(IoT) 네크워크 프로그래밍
유니티,Unity 엔진을 활용한 VR/AR 콘텐츠 개발 _사물인터넷(IoT) 네크워크 프로그래밍
 
2. xamarin.android 2.5 xamarin.android(with .jar, .aar, native android librar...
2. xamarin.android 2.5 xamarin.android(with .jar, .aar, native android librar...2. xamarin.android 2.5 xamarin.android(with .jar, .aar, native android librar...
2. xamarin.android 2.5 xamarin.android(with .jar, .aar, native android librar...
 
2. xamarin.android 2.5 xamarin.android(with .jar, .aar, native android librar...
2. xamarin.android 2.5 xamarin.android(with .jar, .aar, native android librar...2. xamarin.android 2.5 xamarin.android(with .jar, .aar, native android librar...
2. xamarin.android 2.5 xamarin.android(with .jar, .aar, native android librar...
 
2. xamarin.android 2.3 hello android multi screen example part2
2. xamarin.android 2.3 hello android multi screen example part22. xamarin.android 2.3 hello android multi screen example part2
2. xamarin.android 2.3 hello android multi screen example part2
 
2. xamarin.android 2.2 hello xamarin android 구조 2.2.7 simple intent example(현...
2. xamarin.android 2.2 hello xamarin android 구조 2.2.7 simple intent example(현...2. xamarin.android 2.2 hello xamarin android 구조 2.2.7 simple intent example(현...
2. xamarin.android 2.2 hello xamarin android 구조 2.2.7 simple intent example(현...
 
2. xamarin.android 2.2 hello xamarin android 구조 2.2.6 simple intent example(웹...
2. xamarin.android 2.2 hello xamarin android 구조 2.2.6 simple intent example(웹...2. xamarin.android 2.2 hello xamarin android 구조 2.2.6 simple intent example(웹...
2. xamarin.android 2.2 hello xamarin android 구조 2.2.6 simple intent example(웹...
 
2. xamarin.android 2.2 hello xamarin android 구조 2.2.1 resources
2. xamarin.android 2.2 hello xamarin android 구조 2.2.1 resources2. xamarin.android 2.2 hello xamarin android 구조 2.2.1 resources
2. xamarin.android 2.2 hello xamarin android 구조 2.2.1 resources
 

2. xamarin.android 2.2 hello xamarin android 구조 2.2.7 simple intent example(현재 위치를 얻은 후 지도에 표시하기, 마시멜로이후 권한 획득방법 구현) part1

  • 1. 2. Xamarin.Android 2.2 Hello Xamarin Android 구조? 2.2.7 Simple Intent Example (현재 위치를 얻은 후 지도에 표시하기, 마시멜로이후 권한 획득방법 구현) part.1 탑크리에듀 http://www.topcredu.co.kr/
  • 2. 2.2.7 Simple Intent Example  Android 개발자가 이용할 수 있는 130 가지 이상의 고유 권한을 사용하여 응용프로그램에서 사용할 권한을 정확히 알기 어렵다. Android Marshmallow는 사용 권한을 단순화 할뿐만 아니라 필요한 사용 권한의 수 를 줄이기 위해 응용 프로그램 사용 권한에 대해 완전히 새로운 방향을 제 시하는 데 예제를 통해 알아보자.  폰접근 권한을 받아오고 GPS를 통해 위치 정보를 받아, 지도를 로딩하는 방법에 대한 실습  “GetLocation“ 라는 이름의 Xamarin.Android 프로젝트 생성  AssemblyInfo.cs에 위치정보 서비스를 위한 두개의 권한을 허용 탑크리에듀 http://www.topcredu.co.kr/
  • 3. 2.2.7 Simple Intent Example  사용자 위치를 얻기 위해 GPS를 사용해야하는 경우 ACCESS_FINE_LOCATION 및 ACCESS_COARSE_LOCATION 권한을 지정하는데 API 레벨 23(마시멜로) 이 상에서 런타임시 사용자에게 요청하게 된다. 사용자 위치를 얻기 위해 GPS를 사용해야하는 경우 ACCESS_FINE_LOCATION 및 ACCESS_COARSE_LOCATION 권한을 지정해야 했다. 사용 권한 그룹은 위치, 연락처, 전 화, 센서, SMS 및 저장소와 같은 유사한 작업을 수행하는 사용 권한을 단순화하려고 시도 하는데 앱 그룹은 현재 1 ~ 7 개의 권한을 단일 권한 그룹으로 묶는데 한 번에 그룹의 모든 권한을 요청할 수 있다. 이러한 권한 그룹 중 하나에서 찾은 권한 또는 일반으로 지정되지 않은 권한을 사용하는 경 우 사용자에게 권한을 요청해야 한다. Geolocator Plugin은 AccessFineLocation and AccessCoarseLocation 위치 권한을 모두 필 요로하며, android.permission-group.LOCATION에 그룹화되어 있다. AndroidManifest.xml 에 이 두 가지 권한을 추가해야 하며 런타임에 요청해야 한다. 탑크리에듀 http://www.topcredu.co.kr/ [assembly: UsesPermission(Manifest.Permission.AccessFineLocation)] [assembly: UsesPermission(Manifest.Permission.AccessCoarseLocation)]
  • 4. 2.2.7 Simple Intent Example  AssemblyInfo.cs에 Geocoder 클래스를 사용하는 데 필요한 권한을 선언, 기기의 GPS 좌표를 얻기 위해 꼭 필요한 것은 아니지만 본 예제에서는 현재 위치의 번지 를 얻기 위해 사용. 탑크리에듀 http://www.topcredu.co.kr/  AssemblyInfo.cs에 Geocoder 클래스를 사용하는 데 필요한 권한을 선언, 기기의 GPS 좌표를 얻기 위해 꼭 필요한 것은 아니지만 본 예제에서는 현재 위치의 번지를 얻기 위해 사용.
  • 5. 2.2.7 Simple Intent Example 탑크리에듀 http://www.topcredu.co.kr/
  • 6. 2.2.7 Simple Intent Example  텍스트뷰와 버튼을 위한 UI 생성, ResourcelayoutMain.axml 탑크리에듀 http://www.topcredu.co.kr/ <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" android:paddingTop="20dp" android:paddingLeft="8dp" android:paddingRight="8dp" android:id="@+id/main_layout"> <Button
  • 7. 2.2.7 Simple Intent Example 탑크리에듀 http://www.topcredu.co.kr/ android:layout_width="fill_parent" android:textAppearance="?android:attr/textAppearanceMedium" android:layout_height="wrap_content" android:id="@+id/get_permission_button" android:text="Get Permission" /> <Button android:layout_width="fill_parent" android:textAppearance="?android:attr/textAppearanceMedium" android:layout_height="wrap_content" android:id="@+id/get_address_button" android:text="Get Location" /> <TextView android:layout_width="fill_parent" android:textAppearance="?android:attr/textAppearanceMedium" android:layout_height="wrap_content"
  • 8. 2.2.7 Simple Intent Example 탑크리에듀 http://www.topcredu.co.kr/ android:text="Location (when available)" android:id="@+id/location_text" android:layout_marginBottom="15dp" /> <TextView android:layout_width="fill_parent" android:textAppearance="?android:attr/textAppearanceMedium" android:layout_height="wrap_content" android:text="Address (when available)" android:id="@+id/address_text" android:layout_marginTop="10dp" /> <Button android:layout_width="fill_parent" android:textAppearance="?android:attr/textAppearanceMedium" android:layout_height="wrap_content" android:id="@+id/get_map_button" android:text="Get Map" /> </LinearLayout>