노력과 삽질 퇴적물
자마린: 기초 및 입문 (1) 본문
목차
|
|
필요한 파일 프로젝트 생성 환경설정 빌드 테스트 |
|
기초 및 입문 (2)
|
레이아웃 및 UI 액티비티 코드를 통한 UI제어 |
기초 및 입문 (3)
|
??? |
* JAVA & 이클립스ADT에서 하던걸 기준으로 놓고 자마린(Xamarin) 공식 튜토리얼을 참조해서 작성하면서 가급적 병행표기를 해뒀습니다.
* 이번 포스팅 목표는 프로젝트 생성부터 빌드까지로 레이아웃등 솔루션내 구성에 대한 설명은 다음 포스팅에서 다루겠습니다.
* MS진영이 Xamarin.Forms기반으로 MAUI를 밀고 있다는 자료를 뒤늦게 발견해서 그 쪽으로 환승합니다. [2023-03-11]
0. 필요한 파일
파일명
|
예시경로 |
android-sdk-windows
|
D:\dev_lib\android-sdk-windows |
jdk-11.0.16_windows-x64_bin | C:\Java\jdk_11.0.16 * 아직 1.8을 쓰는 경우도 있던거 같지만 개인 프로젝트는 11로. * VisualStudioSetup.exe를 통해 설치할 경우, 자동 설치되는터라 기존에 없던분은 생략 가능. |
VisualStudioSetup.exe [#다운로드] | (VS 메인 프로그램등은 경로가 자동설정) |
* VisualStudioSetup.exe로 설치하고, C:\Program Files (x86)\Android\android-sdk에서 복사했습니다. 안드로이드 스튜디오같은거 쓸때 중복으로 설치되고 해서 용량이...
* JDK 자체를 처음 설치할 경우, [#개발용 환경변수 설정(Path 설정)] 참조
* 자마린은 VS 설치시 병행이 가능합니다.
평소 쓰던 토이 프로젝트 구조 방식을 적용하면 아래와 같이 되지만 어디까지나 제 방식인데 나중에 이 부분을 생략하고 진행하면 혼선이 올 수도 있어서 메모차원에서 남깁니다.
(sampleProj.sln와 같은 위치에 있던 플랫폼별 폴더들 이름을 바꾼후 src 하위로 이동)
# sampleProj.sln 파일내
전 예전부터 SDK써오던 경로가 따로 있고 안드로이드 스튜디오도 그 경로를 쓰고 있다보니 별도의 경로로 수정해서 사용하겠습니다.
2) SDK 관리자
[도구>Android>Android SDK 관리자]
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.4.33213.308
MinimumVisualStudioVersion = 10.0.40219.1
(중략) = "Android", "Android\Android.csproj", "(중략)"
EndProject
(중략) = "iOS", "iOS\iOS.csproj", "(중략)"
EndProject
(중략) = "Xamarin", "Xamarin\Xamarin.csproj", "(중략)"
EndProject
2. 환경 설정
1) VS
[도구>옵션]에서 경로는 자체 설치된걸로 잡혀있어서 이대로 그냥 쓰셔도 되지만,전 예전부터 SDK써오던 경로가 따로 있고 안드로이드 스튜디오도 그 경로를 쓰고 있다보니 별도의 경로로 수정해서 사용하겠습니다.
2) SDK 관리자
[도구>Android>Android SDK 관리자]
-> 플랫폼 탭에서는 필요한 API버전내에서 'Android SDK Platform (버전_번호)'랑 Google APIs xxx xxx System Image를 선택해줍니다. 실제 개발 및 빌드등에 필요한 필수사항입니다.
-> 도구 탭에서는 최소한의 선택사항인데, 상단에 있는 항목들이 빌드에 축가로 필요한 부분이고 추가 부분은 디버깅과 에뮬레이터 관령입니다.
3) API 레벨 및 SDK버전
Windows Installation(작성: 2021-10-21)에 나온 설명으로는 자마린 안드로이는 JDK11이고, 이전 버전중 9는 미지원이고 8은 API레벨에 제약이 있긴해도 어느 범위까지는 가능한거 같습니다. (원문, JDK 8 also supports API levels earlier than 24)
'Google Play의 대상 API 수준 요구사항 충족하기'에서는 "2023년 1월부터 앱 업데이트는 Android 12 이상을 타겟팅하고 Android 12의 동작 변경사항에 맞게 조정되어야 합니다. 단, Android 11 이상을 타겟팅해야 하는 Wear OS 앱은 예외입니다."로 '안드로이드12=API 31'니깐, 공개용 앱 새로 만드는건 JDK11가 필수로 보면 되겠지만, 테스트 디바이스가 갤럭시S9인 관계로 저는 최소 사양을 Android 10로 두겠습니다.
SDK 버전 맞추기.
-> 안드로이드 스튜디오나 이클립스+ADT환경에서는 AndroidManifest.xml로 SDK버전을 지정했는데, 자마린에서는 Properties에서 드롭다운으로 선택하면 됩니다. 여기서 수정하면 xml쪽은 자동으로 반영되고 역방향도 됩니다.
-> 최소 Android 버전(minSdkVersion): 디바이스의 최소사양, 지정된 버전 밑으로는 설치 불가.
-> 대상 Android 버전(targetSdkVersion): 구현중 필요한 클래스나 테마상 최소 버전보다 높을때가 있던데, 지금은 최소 버전과 같게 잡아둡니다.
-> Android 버전을 사용하여 컴파일: 자마린 환경에서 처음보는 옵션이다보니 지금 시점에서는 모르겠습니다. 이번에는 기본적인 빌드 테스트까지가 목표이니 최소 버전과 동일하게 해둡니다.
) 에뮬레이터
-> '안드로이드 12 업데이트가 궁금합니다.'를 보면 갤럭시S 모델중 가장 낮은 갤럭시S10로 해상 h3040×w1440, 화면비 19:9, 디스플레이 사이즈는 6.1"지만, 테스트 디바이스 사양상 h2960×w1440, 5.8"
-> 프로세서는 하드웨어 가속등 성능에 이점상, x86 아니면 x86_64를 쓰면 됩니다.(속도: x86 > x86_64)
C:\WINDOWS\system32>systeminfo... ... ...호스트 이름: ANALOG-GREENOS 이름: Microsoft Windows 10 HomeOS 버전: 10.0.19045 N/A 빌드 19045 <--빌드 1803이상OS 제조업체: Microsoft CorporationOS 구성: 독립 실행형 워크스테이션OS 빌드 종류: Multiprocessor Free등록된 소유자: MTG... ... ...Hyper-V 요구 사항: 하이퍼바이저가 검색되었습니다. Hyper-V에 필요한 기능이 표시되지 않습니다.
2) 구동
1) 영어
Xamarin.Android
기타. 참조자료
1) 영어
Xamarin.Android
Android 개발자 | Android Developers
Microsoft Learn: 커리어의 문을 여는 기술 구축
Microsoft Learn: 커리어의 문을 여는 기술 구축
> Xamarin.Forms XAML 기본 사항 - Xamarin | Microsoft Learn
> 에뮬레이터 성능에 대한 하드웨어 가속(Hyper-V & HAXM) - Xamarin | Microsoft Learn
> 에뮬레이터 성능에 대한 하드웨어 가속(Hyper-V & HAXM) - Xamarin | Microsoft Learn
롤
'📂게임개발 note > 모바일 개발' 카테고리의 다른 글
이클립스+ADT에서 안드로이드 스튜디오로 환승하는 가이드 (0) | 2019.07.01 |
---|---|
유니티: 디버깅 방식 (0) | 2018.08.13 |
안드로이드: 이클립스 프로젝트를 안드로이드 스튜디오로 포팅 (0) | 2018.05.17 |
크로스 플랫폼: 자마린 설치 번외, VS2017 (0) | 2018.05.11 |
안드로이드: SDK 명령어 버전 (0) | 2018.04.23 |