자마린(Xamarin)실습. Xamarin.Android HelloWorld!, 자마린.안드로이드 실습예제
Hello Android(Xamarin.Android Application) Example
n Xamarin.Android를 이용하여 전화번호를 입력받은 후 폰의 전화걸기 앱을 호출하여 전화거는 기능을 구현해 보자.
n Visual Studio를 실행하여 파일 -> 새로만들기 -> 프로젝트를 클릭 후 좌측 템플릿에서 Android -> 비어있는 앱(Blank App)을 선택하고 프로젝트 이름을 “Android_Hello”라고 입력을 하자.
n 프로젝트가 생성되면 우측 솔루션 탐색기의 Resources -> Layout 아래의 activity_main을 더블 클릭하면 폰화면이 나타나는데 이 파일이 스크린의 Layout 파일이다.
n 화면 좌측에 도구상자(ToolBox)가 보이지 않으면 보기메뉴 -> 도구상자를 클릭해서 좌측에 위치시킨 후 Text(Large)를 드래그 해서 폰화면의 상단 가운데 위치 시키고 우측하단 속성창에서 Text 속성을 " Enter a Phone Number : ” 로 입력하자.
n 툴박스(ToolBox)에서 Plain Text 위젯을 선택 후 Text(Large) 박스 아래에 위치 시키고 id 속성을 “@+id/PhoneNumberText”로 설정하자. (드래그해서 위치 시킬 때 마우스 커서가 화살표 모양이 될 때 컨트롤을 놓아야 한다.)
n 도구상자에서 Button을 선택해서 Plain Text 아래에 위치시키고 id 속성을 “@+id/CallButton”, Text 속성을 “Make a Call”로 설정하자.
n “Make a Call“ 버튼과 연관된 기능을 구현하는데 솔루션 탐색기에서 MainActivity.cs 파일을오픈하고 OnCreate 메소드에서 전화걸기 버튼의 기능을 구현하자.
[MainActivity.cs]
n Application에 전화거는 기능을 활성화 시키자. Android Manifest안에 권한과 관련된 부분을 정의해야 하는데, 솔루션 탐색기에서 Properties를 더블클릭하고 좌측 Android Manifest를 선택 후 하단의 Permission중 “CALL_PHONE” permission을 활성화 하자.
n 애플리케이션 이름을 지정하자. 기본적으로 프로젝트명으로 되어 있는데 “First Xamarin.Android App”으로 변경하자. (Resources/values/strings.xml)
n 모든 변경사항을 저장(Ctrl+Shift+S)하고 빌드하자.(Build > Rebuild Solution)
n MainActivity.cs의 Label은 응용프로그램의 스크린 최상단에 디스플레이되는 텍스트, 응용프로그램의 이름이니 필요하다면 수정을 하면 된다.
n 실습시 전화걸기가 권한/보안 오류로 인해 작동하지 않는다면 설정 -> 애플리케이션 관리 -> 애플리케이션 관리자를 실행하여 해당 앱을 선택하고 권한 -> 전화를 선택하여 권한을 주도록 하자.
n 에뮬레이터, 또는 안드로이드폰으로 테스트를 해보자.
실제 폰에서 테스트 하길 권고하며 USB 연결을 했는데도 상단에 본인의 “휴대폰 모델명”이 보이지 않으면 개인의 폰에 맞는 USB Driver를 설치 후 다시 USB를 연결하자.
Properties를 더블클릭 후 좌측 Application 에서 API LEVEL 23(mashimallow)로 설정하고 이뮬레이터를 실행했다. 상단의 실행단추를 눌러 실행하자.
[에뮬레이터 실행화면]
n 폰으로 테스트 하기 위해서는 휴대폰을 USB로 연결 후 폰에서 USB 디버깅을 활성화 해야 되는데 휴대폰 상단 설정을 클릭하고 더보기 -> 개발자옵션 ->USB 디버깅을 체크하자. 또는 갤럭시 S4이후, 안드로이드4.2 젤리빈 이후의 폰들은 개발자 옵션이 비활성화 되어있으므로 설정 -> 디바이스 정보 -> 빌드번호 를 7번 클릭하면 “개발자 모드가 실행되었습니다” 라는 메시지가 나오면서 개발자 모드가 활성화 된다. 개발자 모드를 활성화하면 USB 디버깅도 같이 활성화 하자.
[휴대폰 실행화면]
Hello Xamarin Android 구조?
n Properties : 응용프로그램 이름, 버전, 접근권한과 같이 Xamarin.Android Application 요구사항들을 설명하는 AndroidManifest.xml을 포함하고 있으며, 자기자신 어셈블리를 서술하는 AssemblyInfo.cs 파일도 제공한다.
n 참조 : 응용프로그램이 참조하는 내부, 외부 어셈블리(.DLL)을 지정한다. References 디렉터리를 확장하면 System, System.Core 및 System.Xml과 같은 .NET 어셈블리에 대한 참조는 물론 Xamarin의 Mono.Android 어셈블리에 대한 참조가 표시된다.
n Assets : 글꼴, 로컬 데이터 파일 및 텍스트 파일을 비롯하여 응용 프로그램이 실행해야하는 파일이 들어 있으며 여기에 포함 된 파일은 생성 된 Assets 클래스를 통해 액세스 할 수 있습니다.
n Resources : 문자열, 이미지 및 레이아웃과 같은 응용 프로그램 자원을 포함하며 생성 된 Resource 클래스를 통해 코드에서 이러한 리소스에 액세스 할 수 있다.
Resources
n Resources 디렉토리는 Resource.Designer.cs파일과 drawable, layout, mipmap, values의 폴더를 담고 있다.
n drawable : 이미지, 비트맵등 drawable resources를 제공한다.
n layout : 스크린 또는 액티비티용 User Interface를 정의하는 Android designer 파일들(.axml) 담고 있다. 안드로이드 템플릿에서는 activity_main이라는 기본 레이아웃을 제공해 준다.
n Resources.Designer.cs : Resource class로 알려져 있는 이 파일은 각 리소스에 할당된 unique ID를 담고 있는 부분 클래스(Partial Class) 파일이다. Xamarin.Android tools가 자동으로 생성하며 필요할때 재생성된다. 이 파일은 직접 수정할수 없고 Xamarin.Android에서 UI가 변경변 발생될 때 마다 자동으로 수정된다.
#자마린안드로이드, #자마린HelloWorld, #Xamarin.AndroidHelloWorld,#자마린, #자마린교육, #자마린강좌, #Xamarin, #Xamarin교육, #자마린강의, #XamarinForms
댓글 없음:
댓글 쓰기