자마린, 안드로이드, Xamarin Android Intent(인텐트), 웹페이지 오픈하기
2.3 Xamarin Android Intent(인텐트)
n 안드로이드를 이루는 4가지 기본 요소는 Activity, Service, Broadcast Receiver, Content Provider 인데 Activity는 UI화면을 담당하여 User Interaction을 처리하며, Service는 백그라운드에서 실행되는 프로세스를 의미하고, Brodcast Receiver는 다양한 이벤트와 정보를 받아 반응하는 컴포넌트로 브로드캐스팅은 메시지를 여러 객체에게 전달하는 방법을 의미하는데 이렇게 전달되는 브로드캐스팅 메시지를 Brodcast Receiver를 이용해 받을 수 있다. 마지막으로 Content Provider는 데이터를 관리하고 다른 어플리케이션 데이터를 제공해주는 컴포넌트로 데이터베이스의 데이터를 전달할때 많이 사용한다.
n 인텐트(Intent)는 이러한 어플리케이션 구성요소 사이의 작업 수행을 위한 정보를 전달하는 기능을 하는데 액티비티의 화면전환이 일어날 때 호출하거나 메시지를 전달하는 매개체로서의 역할을 한다.
n 안드로이드 OS에서 수행 되어야하는 작업을 위한 추상적인 개념인데 전화를 걸거나, 웹 페이지를 표시하거나, 주소를 매핑하는 등의 의도로 외부 프로그램을 시작하는 데 사용된다.
n 인텐트는 명시적 인텐트와 암시적 인텐트 두가지 방법이 사용 되는데 명시적 인텐트는 전환될 액티비티를 직접 적어서 표현하는 방법이다. 아래는 CallHistoryActivity화면으로 이동시키는 예문인데 다음화면으로 넘기면서 "phone_numbers"라는 이름으로 ArrayList에 담긴 데이터를 넘긴다.
n 암시적 인텐트는 전환될 곳을 직접 지정하지 않고 액션을 적어서 사용하며 전환될 곳에도 액션을 적어 인텐트를 받는다.
2.3.1 Simple Intent Example(웹페이지 오픈하기)
n “OpenWebpage“ 라는 이름의 Xamarin.Android 프로젝트 생성
n Resource\layout\activity_main 에서 버튼을 하나 올리고 이름은 default로 두자.
n Resource\values\strings.xml
n MainActivity.cs 파일에 Button의 클릭 이벤트 코드 작성
버튼의 글씨를 원래 입력한대로 소문자로 출력하려면 Button의 Text All Caps 속성의 체크를 풀거나 false로 입력하면 된다.