정리가 필요한 카테고리(추후 정리)/Android, iOS

[Android] 자마린 안드로이드 가이드 따라가기 #2

TwinParadox 2017. 9. 2. 00:43
728x90

지금까지 애플리케이션을 구동시키는 소스를 작성했다.

이것이 정상적으로 작동하게 하기 위해서는 한 가지 해줘야 하는 작업이 있는데, 바로 '퍼미션 설정'이다.

앱 개발을 해본 사람들은 알겠지만, 스마트폰의 어떤 것에 접근하기 위해 권한 요청을 하는 작업이다.


참고로, 접근 권한에 대해서 좀 더 엄격해졌다. 과거에는 앱이 설치되는 즉시 명시해놓은 접근 권한에 대해서는 암묵적으로 동의하는 것으로 간주하고 앱 설치 이후에는 명시해놓은 정보들에 무차별 접근했으나, 최근 법이 바뀌어, 사용자가 설치하더라도 해당 권한에 접근하려는 경우 반드시 거기에 따른 권한 허가를 받아야만 한다.


퍼미션에 대한 것은 안드로이드 스튜디오에서와 마찬가지로 AndroidManifest.xml에서 관리한다. 이외에도 xml에 직접 코드를 넣어서 퍼미션 설정을 하는 것 외의 방법이 존재하는데 바로 Properties다






C# 윈폼 프로그래밍을 해본 사람이라면 프로그램의 모든 설정(프로그램 버전, 프레임워크 버전 등), 사용자 설정 값을 관리하는 것이 바로 이 Properties인데, 자마린을 통한 안드로이드 개발에서도 이와 동일하게 사용이 가능하다.







어떻게 보면 퍼미션 관련 코드는 자주 쓰는 편은 아니라서 코드가 기억나지 않을 수도 있는데, 간편하게 체크하면서 코드가 추가되는 것으로 정리가 가능하다.


여기까지 해주었다면 솔루션 저장(CTRL+SHIFT+S)를 한 번 해주고, 전체적으로 솔루션을 빌드(CTRL+SHIFT+B)해보자.


여기까지 잘 따라왔고, 코드를 하나도 틀리지 않고 직접 입력했거나(혹은 그대로 복사 붙여넣기를 실시했거나), 설정도 하나 건드린 게 없는데 빌드에 문제가 발생한다면, 공식 가이드에서는 지금까지의 과정을 다시 한 번 체크하라고 한다. 실제로 지금까지의 과정에서 코드를 잘못 치지 않는 이상 발생하는 문제보다는 아래의 문제가 더 많을 것이다.




1. 솔루션 이름을 마음대로 지어 놓은 경우

2. CS0103 - 이름이 현재 컨텍스트에 없습니다.




1번의 문제라면 솔루션 이름을 변경해주면 된다.


문제는 2번이다. C#을 이제 막 시작한 사람들에게는 자마린 가이드만 따라갔을 경우에는 이 오류를 해결하기 힘든데, 이 경우에는 "using PhoneWord"를 "MainActivity.cs"에 추가해주면 문제가 말끔하게 사라진다. 아무래도 이 공식 강좌 자체가 기본적으로 C#을 다뤄본 사람들에 기초한 가이드인 터라, 이런 세세한 부분은 알려주지 않는다.


여기까지 했다면, 이제 어플리케이션의 아이콘을 설정해보는 방법에 대해서 알아보도록 하자.


새로운 아이콘을 적용하기에 앞서, 기존 아이콘을 삭제해줘야 한다.

기존 아이콘의 경로는 "PhoneWord>Resources>drawable>icon.png"이다.

기존 아이콘을 삭제하면 이제 새로 적용할 아이콘을 다운 받아야 한다. 자마린 공식 가이드에서는 자마린 아이콘을 제공하고 있는데, 해당 아이콘은 아래 경로를 클릭하면 다운로드 받을 수 있다.




링크







압축을 푼 것들을 바로 "PhoneWord>Resources"로 끌어다 놓으면 솔루션의 Resources에 폴더들과 아이콘이 추가된다. 이제 아이콘을 솔루션에 추가했으니, 아이콘을 변경해주는 작업만 하면 된다. 이전에 퍼미션을 관리했던 "Properties>Android 매니페스트"에서 관리할 수 있다.





이제 앱을 에뮬레이터나, 별도로 준비한 디바이스에 작동시키면 된다. 그러기 전에 앱을 사용하기 위한 최소 버전과, 타겟 버전을 설정해야 하는데 여기서는 안드로이드의 7.0버전, 누겟(API 24)를 최소 버전으로 타겟 버전은 "SDK 버전을 사용하여 컴파일 사용"으로 설정한다.







여기서는 에뮬레이터를 사용하여 앱을 실행시키도록 하겠다.

참고로 내가 설치해둔 SDK 버전이 API 23이라서 최소 버전은 API 16, 타겟 버전은 API 23으로 설정하고 앱을 실행시켰다.






번호를 입력하고 "TRANSLATE" 버튼을 누르면 "CALL XXXX"로 "CALL" 버튼이 바뀌고, "CALL" 버튼을 누르면 전화를 걸겠냐는 문구가 나온다. 에뮬레이터를 사용하면 전화가 가지 않을 것이다.


여기까지 잘 따라왔다면, 자마린을 이용해서 처음으로 안드로이드 어플을(비록 예제지만) 만들어 본 것이다. 사실 이렇게 예제만 따라 가는 건 별 것 없다.


다음 포스팅부터는 좀 더 다양한 기능들을 사용하면서 자마린을 이용하여 다른 안드로이드 앱들을 만들어보도록 하겠다. 아마도 첫번째는 블루투스를 통해 아두이노와 통신하는 앱일 것 같다.

728x90