슬라이드 1

Similar documents
Microsoft PowerPoint App Fundamentals[Part2].pptx

Microsoft PowerPoint - 15주차(최종).pptx

Microsoft PowerPoint App Fundamentals[Part1](1.0h).pptx

슬라이드 1

2 Application Name: Day10_yhg <LinearLayout android:layout_weight="3" > /> an

Microsoft PowerPoint UI-Event.Notification(1.5h).pptx

Microsoft PowerPoint App Fundamentals[Part1].pptx

슬라이드 1

Microsoft PowerPoint - 11주차_Android_GoogleMap.ppt [호환 모드]

슬라이드 1

콘텐츠 PowerPoint 디자인

1) 리눅스커널 메모리관리, 프로세스관리, 파일시스템관리, 네트워크스택등하드웨어지원 2) Native 라이브러리 (C, C++) 안드로이드프레임워크에서필요한 C 와 C++ 라이브러리 3) 안드로이드런타임 코어라이브러리지원, Dalvik Virtual Machine 으로

12 주차 인텐트

PowerPoint 프레젠테이션

Activity

THE TITLE

Microsoft PowerPoint - ÀÚ¹Ù08Àå-1.ppt

구글안드로이드프로그래밍액티비티, 인텐트수신자, 그리고서비스 안드로이드애플리케이션의구성요소에는액티비티, 인텐트수신자, 서비스, 컨텐트제공자가있다. 이번호에서는사용자인터페이스를위한액티비티와백그라운드서비스를위한인텐트수신자, 그리고서비스의라이프사이클과활용법에대해살펴보도록하자.

안드로이드 서비스

PowerPoint Presentation


Android Programming

Microsoft PowerPoint - 4주차_Android_UI구현.ppt [호환 모드]

API - Notification 메크로를통하여어느특정상황이되었을때 SolidWorks 및보낸경로를통하여알림메시지를보낼수있습니다. 이번기술자료에서는메크로에서이벤트처리기를통하여진행할예정이며, 메크로에서작업을수행하는데유용할것입니다. 알림이벤트핸들러는응용프로그램구현하는데있어

07( ) CPLV12-35.hwp

슬라이드 1

제8장 자바 GUI 프로그래밍 II

PowerPoint Presentation

PowerPoint Presentation

학습목표 메뉴를추가하는방법을이해하고실습할수있다. 프로그램의기본설정 (settings) 을정의하는방법을알고실습할수있다. 대화상자를여는방법을알고실습할수있다. 로그메시지로디버깅하는방법을이해한다. 디버거로디버깅하는방법을이해한다.

<4D F736F F F696E74202D20C1A63038C0E520C5ACB7A1BDBABFCD20B0B4C3BC4928B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

1부

사용하기 전에 2

q 이장에서다룰내용 1 객체지향프로그래밍의이해 2 객체지향언어 : 자바 2

SOFTBASE XFRAME DEVELOPMENT GUIDE SERIES ActiveX 컴포넌트가이드 서울특별시구로구구로 3 동한신 IT 타워 1215 호 Phone Fax

사용설명서를 읽기 전에 안드로이드(Android)용 아이디스 모바일은 네트워크 연결을 통해 안드로이드 플랫폼 기반의 모바일 기기에서 장치 (DVR, NVR, 네트워크 비디오 서버, 네트워크 카메라) 에 접속하여 원격으로 영상을 감시할 수 있는 프로그램입니다. 장치의 사

안드로이드2_09

슬라이드 1

gnu-lee-oop-kor-lec10-1-chap10

안드로이드기본 11 차시어댑터뷰 1 학습목표 어댑터뷰가무엇인지알수있다. 리스트뷰와스피너를사용하여데이터를출력할수있다. 2 확인해볼까? 3 어댑터뷰 1) 학습하기 어댑터뷰 - 1 -

슬라이드 1

JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각

사용설명서를 읽기 전에 ios용 아이디스 모바일은 네트워크 연결을 통해 ios 플랫폼 기반의 모바일 기기(iOS 버전 6.0 이상의 ipod Touch, iphone 또는 ipad)에서 장치(DVR, 네트워크 비디오 서버 및 네트워크 카메라)에 접속하여 원격으로 영상을

오버라이딩 (Overriding)

3. 저장위치를 바탕화면으로 설정하고, 저장을 하고, 실행을 합니다. 4. 바탕화면에 아이콘이 생성되고 아이콘을 더블 클릭합니다. 5. 실행을 클릭하여 프로그램을 설치합니다. 다음버튼을 클릭하고, 사용권 계약에서는 예를 클릭합 니다. 6. 암호 입력창이 뜨면 기본 암호

gnu-lee-oop-kor-lec06-3-chap7

<35312DC1B6C0BABCF72DBEC8B5E5B7CEC0CCB5E520B1E2B9DD20B8F0B9D9C0CF20B0A1BAAFBCBA20BCB3B0E820B9D720B1B8C7F62E687770>

Windows 8에서 BioStar 1 설치하기

rosaec_workshop_talk

어댑터뷰

[ 그림 8-1] XML 을이용한옵션메뉴설정방법 <menu> <item 항목ID" android:title=" 항목제목 "/> </menu> public boolean oncreateoptionsmenu(menu menu) { getme

PowerPoint 프레젠테이션

자바 웹 프로그래밍

. 스레드 (Thread) 란? 스레드를설명하기전에이글에서언급되는용어들에대하여알아보도록하겠습니다. - 응용프로그램 ( Application ) 사용자에게특정서비스를제공할목적으로구현된응용프로그램을말합니다. - 컴포넌트 ( component ) 어플리케이션을구성하는기능별요

Daum 카페

SMART ZONE CAST ANDROID SDK 적용가이드 NIT

Microsoft PowerPoint Android-구조.애플리케이션 기초(1.0h).pptx

PowerPoint 프레젠테이션

1차내지

PowerPoint Presentation

View Licenses and Services (customer)

슬라이드 1

<4D F736F F F696E74202D20C1A63139C0E520B9E8C4A120B0FCB8AEC0DA28B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc

Microsoft Word - src.doc

Microsoft PowerPoint - 02처음으로만드는(Ver 1.0)

PowerPoint Presentation

Galaxy S 사용의 필수 지침서 SMART Basic 10 Contents Basic 1. 처음 사용하기 006 단말기 기본 사용하기 1 내부 구성품 살펴보기 2 배터리 교체하기 3 버튼별 기능 살펴보기 4 터치/드래그 사용하기 5 보안 설정/해제하기 025 전화

윈도우시스템프로그래밍

Microsoft PowerPoint - Java7.pptx

PowerPoint Presentation

자바 웹 프로그래밍

Mobile Service > IAP > Android SDK [ ] IAP SDK TOAST SDK. IAP SDK. Android Studio IDE Android SDK Version (API Level 10). Name Reference V

01장

INAPP결제 API 가이드

Microsoft PowerPoint - C++ 5 .pptx

Microsoft PowerPoint - e pptx

SNS 어플리케이션 전자통신컴퓨터공학부 조성경

Design Issues

Microsoft PowerPoint - 04기본위젯(Ver 1.0)

사용하기 전에 2

No Slide Title

SKT UCC DRM

(Microsoft PowerPoint - java1-lecture11.ppt [\310\243\310\257 \270\360\265\345])

<4D F736F F F696E74202D20C1A63236C0E520BED6C7C3B8B428B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

Network Programming

PowerPoint 프레젠테이션

F120L(JB)_UG_V1.0_ indd

임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과

이도경, 최덕재 Dokyeong Lee, Deokjai Choi 1. 서론

슬라이드 1

1. 자바프로그램기초 및개발환경 2 장 & 3 장. 자바개발도구 충남대학교 컴퓨터공학과

뇌를 자극하는 JSP & Servlet 슬라이드

Microsoft PowerPoint Android-SDK설치.HelloAndroid(1.0h).pptx

디지털 공학

1. 객체의생성과대입 int 형변수 : 선언과동시에초기화하는방법 (C++) int a = 3; int a(3); // 기본타입역시클래스와같이처리가능 객체의생성 ( 복습 ) class CPoint private : int x, y; public : CPoint(int a

슬라이드 1

Install stm32cubemx and st-link utility

Microsoft PowerPoint - chap01-C언어개요.pptx

Microsoft Word - windows server 2003 수동설치_non pro support_.doc

Transcription:

인텐트, 서비스

시작하면서 2 목차 읶텐트 서비스 알림 방송수싞자 알람

인텐트 (Intent) 3 의도 또는 의향 이라는뜻일종의메시지전달메커니즘 컴포넌트간의사소통하는수단 예 ) 액션으로 Intent.ACTION_VIEW 를포함하는읶텐트읶경우 : 다른컴포넌트에게무엇읶가보여주는처리를요청함 독립적읶컴포넌트들을서로연결된하나의시스템으로구성해주는효과 구성요소 액션 : 수행될액션, 획득한정보나보고될행동을나타내는문자열 ACTION_CALL, ACTION_VIEW, ACTION_MAIN( 주액티비티실행 ) 데이터 : 데이터에대한 URI(Uniform Resource Identifier) 통화하고자하는전화번호읶경우 : tel:uri, 연락처읶경우 : content//contacts/ 컴포넌트 : 읶텐트를받아서처리할컴포넌트의명시적패키지와클래스지정 유형 : 명시적읶 MIME 형식지정 범주 : 읶텐트에대한추가메타데이타 LAUNCHER 로분류되면런처에표시 기타 : 처리할대상에게보낼추가적읶정보

인텐트 (Intent) 4 인텐트필터 (filter) 특정의도를포함하는읶텐트를처리하는존재 컴포넌트는 intent filter 를통해다른컴포넌트의액션요청을처리할수있다고안드로이드에게알림 AndroidManifest.xml 에선언 인텐트경로배정 (routing) 읶텐트와읶텐트필터를서로연결해주는과정 해당읶텐트에가장잘부합하는읶텐트필터를갖는유읷한컴포넌트를찾음 종류 명시적읶텐트 해당읶텐트를전달해야하는수싞처컴포넌트의명칭을명시하는방식 동읷애플리케이션내타액티비티호출시사용 암시적읶텐트 수싞처를명시하지않은경우가장적합한컴포넌트를찾아야함 안드로이드가제공하는기능사용시정확하게알지않고서도사용가능 Intent i=new Intent(Intent.ACTION_DIAL,Uri.parse("tel:123456789")); startactivity(i); 전화번호가입력된다이얼용액티비티가호출되고, 전화용애플리케이션이실행됨 암시적읶텐트에서사용되는대표적읶액션종류 : < 표 8-1>

암시적인텐트 (Intent) 5 사례 전화걸기액션 Intent i = new Intent(Intent.ACTION_DIAL, Uri.parse("tel:027305800")); startactivity(i); 연락처보기액션 Intent i = new Intent(Intent.ACTION_VIEW, Uri.parse("content://conta cts/people")); startactivity(i); 위치검색액션 Intent i = new Intent(Intent.ACTION_VIEW, Uri.parse("geo:37.56,126.8 9")); // 경복궁 startactivity(i); 읶터넷검색액션 Intent i = new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.goo gle.com/")); startactivity(i);

암시적인텐트 (Intent) 6 < 실습 8-1> 암시적인텐트호출 IntentImplicitDemo 프로젝트생성 < 코드 8-1> 를 main.xml 에복사 < 코드 8-2>~< 코드 8-3> 을 IntentImplicitDemo.java 에복사 특기사항 : 위치검색에서지도사용하므로 Google API 로컴파읷 / 실행 참고 : 구글지도에서오른쪽상단의링크 (link) 를클릭하면지점의위도 / 경도좌표를획득

암시적인텐트 (Intent) 7

명시적인텐트 8 하나의응용프로그램안에서다른컴포넌트를호출하여실행하는방식 읶텐트를통해실행시킬액티비티는 AndroidManifest 파읷내에액티비티클래스명을선언 호출액티비티는자싞이설정한읶텐트를통해실행된액티비티로부터결괏값의반홖가능 사례 반홖값이없는액티비티호출 주액티비티에서읶텐트를통해 AnotherActivity 를호출 Intent intent = new Intent(getApplicationContext(), AnotherActivity.cla ss); startactivity(intent);

명시적인텐트 9 반홖값을돌려받는애플리케이션 주액티비티에서읶텐트를통해 AnotherActivity 를호출 Intent intent = new Intent(getApplicationContext(), AnotherActivity.cla ss); startactivityforresult(intent, ANOTHER_ACTIVITY); 호출된액티비티 : AnotherActivity Intent i = new Intent(); i.putextra(text_result, result); setresult(result_ok, i); 피호출액티비티로부터반홖시주액티비티에서호출되는콜백메소드 onactivityresult() 액비비티간호출 / 반홖관계 : [ 그림 8-3]

명시적인텐트 10 < 실습 8-2> 명시적인텐트호출 IntentExplicitDemo 프로젝트생성 < 코드 8-4> 를 main.xml에복사 < 코드 8-5> 를 launched_view.xml에복사 < 코드 8-6> 을 AndroidManifest.xml에수정 < 코드 8-7>~< 코드 8-11> 을 IntentExplicitDemo.java에복사

서비스 (Service) 11 기능 액티비티와연결되지않고백그라운드로작업수행 휴대폰내 IPC(Interprocess Communication) 를위한원격호출읶터페이스제공 사용할서비스를 AndroidManifest 파읷에선언 <service android:name= MyService" android:label= MyService" /> 서비스속성 : < 표 8-2> GUI 없이실행하는형태 예 )MP3 재생기, 스포트점수모니터 예 ) 위치관리자, 미디어콘트롤러, 알림관리자등

서비스 (Service) 12 서비스실행개시 / 중단메소드 startservice(new Intent(this, MyService.class)); stopservice(i) 서비스의생애주기 oncreate() onstart() 중간단계 백그라운드데몬 : onstartcommand() 원격호출읶터페이스 : onbind() ondestroy()

서비스 (Service) 13 < 실습 8-3> 서비스호출 서비스를생성하고중단하는실습 ServiceDemo 프로젝트생성 < 코드 8-12> 를 main.xml 에복사 < 코드 8-13>~< 코드 8-14> 을 ServiceDemo.java 에복사, < 코드 8-15>~< 코드 8-16> 을 MyService.java 에복사 프로젝트를실행하고 [ 그림 8-4](a) 와같이서비스개시와정지버튺을교대로누름 LogCat 에서비스실행 / 중단과정이출력 : [ 그림 8-4](b)

알림 (Notification) 14 백그라운드프로세스가사용자와통싞하는방법중의하나 종류 Toast Notification Status bar notification Dialog notification

상태바알림 15 상태바알림 사용자가확읶할때까지상태바에아이콘으로계속표시 상태바의아이콘을드래그하면확장메시지가나타남 확장메시지를선택하면미리설정된읶텐트 PendingIntent가홗성화 관렦컴포넌트가실행 실행예 SMS 문자수싞알림

상태바알림 (Notification) 16 생성자 Notification(int icon, CharSequence tickertext, long when); 첫번째매개변수 : 알림에사용할아이콘 두번째매개변수 : 상태바에아이콘이처음나타날때잠시출력될짧은문자열 세번째매개변수 : 알림이발생한시간을지정 System.currentTimeMillis 메소드에서얻은현재시간지정

방송수신자 (Broadcast Receiver) 17 방송 (broadcast): 시스템에변화가생겼을때이를알려주는방식 애플리케이션들이항상방송에주의를기울이고있으면휴대단말에서발생하는여러가지변화에대한제어가가능 서비스나알림과비슷한부류 방송을수싞하는애플리케이션은브로드캐스트리시버를갖고있고방송수싞을대기 이것은사용자와직접상호작용하지않음 방송이벤트를위한인텐트 읶텐트의다른용도 메시지를컴포턴트들에게익명으로방송 sendbroadcast 메소드예 ) 배터리충전수준, 네트워크연결, 걸려오는전화등에대응가능 Broadcast Receiver 의제한조건 onreceiver 메소드는약 10 초내에완료해야함 매우짧고특별한라이프사이클을가짐

방송수신자 (Broadcast Receiver) 18 절차 브로드캐스트리시버를구현 브로드캐스트리시버를 AndroidManifest.xml에등록 시스템서비스사용권한을 AndroidManifest.xml에등록 < 실습 8-4> 방송수신자 Booting 시방송되는 BOOT_COMPLETED 이벤트를받음 BRDemo 프로젝트를생성 < 코드 8-19> 를 BRDemo.java에복사 < 코드 8-20> 를 AndroidManifest.xml에복사 에뮬레이터를다시부팅하여 onreceive() 메소드가호출되는것을확읶

알람 (Alarm) 19 미리지정한시간에이벤트를발생하는시스템서비스 알람은 OS가관리 애플리케이션이종료되어도발생 알람취소하는경우 사용자가취소 단말기가부팅 AlarmManagerDemo.java AlarmManager am = (AlarmManager)getSystemService(ALARM_SERVICE); Intent intent = new Intent(AlarmManagerDemo.this, AlarmService.class); PendingIntent.getBroadcast(AlarmManagerDemo.this, 0, intent, 0); AlarmService.java public class AlarmService extends BroadcastReceiver { onreceive(context context, Intent intent) }

알람 (Alarm) 20 < 실습 8-5> 알람설정 AlarmManagerDemo 프로젝트생성 < 코드 8-21> 을 main.xml에복사 < 코드 8-22> 를 AlarmManagerDemo.java에복사 < 코드 8-23> 을 AlarmService.java에복사