Environments

Apple SDK

개발 μž₯μΉ˜κ°€ macOS 인 경우

Xcode λ₯Ό μ—΄κ³ , 지원 ν”Œλž«νΌ λͺ©λ‘μ—μ„œ μ•„λž˜ ν”Œλž«νΌ 지원을 μœ„ν•œ SDK λ₯Ό μ„€μΉ˜ν•΄μ•Ό ν•©λ‹ˆλ‹€.

  • macOS 14.5 SDK (Xcode μ„€μΉ˜μ‹œ 기본으둜 μ„€μΉ˜λ©λ‹ˆλ‹€)
  • iOS 17.5 SDK

Android SDK

SDK κ΄€λ¦¬μžμ—μ„œ API 34 κ΄€λ ¨ 도ꡬλ₯Ό μ„€μΉ˜ν•΄μ•Ό ν•©λ‹ˆλ‹€.

Troubleshooting

ν”„λ‘œμ νŠΈ 파일 μžλ™ ν¬λ§·νŒ… κ΄€λ ¨ 문제

.csproj νŒŒμΌμ€ XML ν˜•μ‹μœΌλ‘œ κ΄€λ¦¬λ©λ‹ˆλ‹€.

일뢀 νŽΈμ§‘κΈ°μ—μ„œ ν¬λ§·νŒ…μ„ ν•˜λŠ” 경우 μ•„λž˜μ™€ 같이 λ³€κ²½λ˜λŠ” κ²½μš°κ°€ μžˆμŠ΅λ‹ˆλ‹€.

<SupportedOSPlatformVersion
			Condition="$([MSBuild]::GetTargetPlatformIdentifier('$(TargetFramework)')) == 'ios'">
			17.2</SupportedOSPlatformVersion>
<SupportedOSPlatformVersion
			Condition="$([MSBuild]::GetTargetPlatformIdentifier('$(TargetFramework)')) == 'maccatalyst'">
			14.5</SupportedOSPlatformVersion>

이 경우, SupportedOSPlatformVersion μš”μ†Œμ˜ 값인 17.2 에 λΉˆλ¬Έμžμ—΄μ΄ μΆ”κ°€λ˜μ–΄, λΉŒλ“œμ‹œ λ¬Έμ œκ°€ λ°œμƒν•  수 μžˆμŠ΅λ‹ˆλ‹€.

μš”μ†Œμ˜ λ¬Έμžμ—΄ 값에 λ¬Έμžμ—΄μ΄ μΆ”κ°€λ˜μ§€ μ•Šλ„λ‘ μ•„λž˜μ™€ 같이 μž‘μ„±λ˜μ–΄μ Έμ•Ό ν•©λ‹ˆλ‹€.

<SupportedOSPlatformVersion Condition="$([MSBuild]::GetTargetPlatformIdentifier('$(TargetFramework)')) == 'ios'"
			>17.2</SupportedOSPlatformVersion>
<SupportedOSPlatformVersion Condition="$([MSBuild]::GetTargetPlatformIdentifier('$(TargetFramework)')) == 'maccatalyst'"
			>14.5</SupportedOSPlatformVersion>

μ „μ—­ μŠ€νƒ€μΌ μ‚¬μš©μ‹œ FlyoutItem 에 λŒ€ν•œ 클래슀 이름 κ΄€λ ¨ 문제

Dotnet Maui 예제 μ½”λ“œλ₯Ό μ‚¬μš©ν–ˆλ˜ κ²ƒμœΌλ‘œ κΈ°μ–΅ν•˜λŠ”λ°, μŠ€νƒ€μΌ 클래슀 이름을 MenuItemLayoutStyle 으둜 μ‚¬μš©ν•˜λŠ” 경우 λ¬Έμ œκ°€ λ°œμƒν•©λ‹ˆλ‹€.

<Style TargetType="Label"
       Class="MenuItemLayoutStyle"
       ApplyToDerivedTypes="True">
    <Setter Property="TextColor"
            Value="....." />
</Style>

λ‚΄λΆ€μ μœΌλ‘œ μ²˜λ¦¬λ˜λŠ” 클래슀 μ΄λ¦„μœΌλ‘œ μ˜ˆμƒλ©λ‹ˆλ‹€.

AppMenuItemLayoutStyle λ“±κ³Ό 같이 λ‚΄λΆ€μ μœΌλ‘œ μ‚¬μš©λ˜λŠ” 클래슀 이름을 νšŒν”Όν•  수 있게 이름을 λ³€κ²½ν•΄μ•Ό ν•©λ‹ˆλ‹€.

μ€‘μ²©λœ FlexLayout μ‚¬μš© κ΄€λ ¨ 문제

μ•„λž˜μ™€ 같이 FlexLayout 을 μ€‘μ²©ν•΄μ„œ μ‚¬μš©ν•˜λŠ” 경우 Android μ—μ„œ λ ˆμ΄λΈ” 크기 계산에 λ¬Έμ œκ°€ μžˆλŠ” 것 κ°™μŠ΅λ‹ˆλ‹€.

점수λ₯Ό 좜λ ₯ν•˜κΈ° μœ„ν•΄ λ ˆμ΄λΈ”μ„ μ‚¬μš©ν•˜κ³  μžˆλŠ”λ°, ν•œμžλ¦¬ 숫자둜 ν‘œμ‹œλ  ν›„ 값이 μ¦κ°€ν•΄μ„œ λ‘μžλ¦¬κ°€ 되면 λ ˆμ΄λΈ” 크기가 μ‘°μ •λ˜μ§€ μ•Šμ•„ λ‘μ€„λ‘œ 값이 ν‘œν˜„λ˜κ³ , 두쀄이 λͺ¨λ‘ 보이지 μ•Šμ•„ 첫자리만 좜λ ₯λ˜λŠ” λ¬Έμ œκ°€ μžˆμ—ˆμŠ΅λ‹ˆλ‹€.

<FlexLayout>

  <FlexLayout>
    <Label />
  </FlexLayout>

<FlexLayout>

μ€‘μ²©λœ FlexLayout 을 μ œκ±°ν•˜κ³ , GridLayout 을 μ‚¬μš©ν•˜κ²Œ λ³€κ²½ν•΄μ„œ 문제λ₯Ό ν•΄κ²°ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

<FlexLayout>

  <Grid ColumnDefinitions="*" RowDefinitions="*">
    <Label Grid.Row="0" Grid.Column="0" />
  </Grid>

<FlexLayout>

Android

Play Console 개발자 계정 본인 인증

이름과 μ£Όμ†Œκ°€ ν™•μΈλ˜λŠ” 곡과금 κ³ μ§€μ„œ λ“±μ˜ λ¬Έμ„œλ₯Ό 사진 촬영 ν›„ μ—…λ‘œλ“œν•˜μ—¬ 개인 인증을 ν•  수 μžˆλ‹€κ³  ν•©λ‹ˆλ‹€.

μ €λŠ” λŒ€λΆ€λΆ„μ˜ κ³ μ§€μ„œλ₯Ό λͺ¨λ°”μΌλ‘œ λ°›κ³  μžˆμ–΄, μ΄¬μ˜ν•  λ¬Έμ„œλ₯Ό μ°ΎκΈ° νž˜λ“€μ—ˆμŠ΅λ‹ˆλ‹€.

κ²€μƒ‰ν•΄λ³΄λ‹ˆ, μ£Όλ―Όλ“±λ‘λ“±λ³ΈμœΌλ‘œ μ²˜λ¦¬κ°€ κ°€λŠ₯ν•˜λ‹€κ³  ν•˜μ—¬, κ°€κΉŒμš΄ μ£Όλ―Όμ„Όν„°λ₯Ό λ°©λ¬Έν•΄μ„œ λ°œκΈ‰λ°›μ€ ν›„ μ΄¬μ˜ν•˜μ—¬ 본인 인증을 마칠 수 μžˆμ—ˆμŠ΅λ‹ˆλ‹€.

집에 좜λ ₯이 κ°€λŠ₯ν•œ μž₯μΉ˜κ°€ μ—†μ–΄μ„œ, μ£Όλ―Όμ„Όν„°λ₯Ό λ°©λ¬Έν–ˆμŠ΅λ‹ˆλ‹€.

μ΅œμ‹  Android 버전을 νƒ€κ²ŸνŒ…ν•˜λ„λ‘ 앱을 μ—…λ°μ΄νŠΈ

Dotnet Muai v8 에 λŒ€ν•œ κ°œλ°œν™˜κ²½μ„ μ€€λΉ„ν•˜λ €λ©΄, andoird api 34 sdk λ₯Ό μ„€μΉ˜ν•΄μ•Ό ν•˜λ―€λ‘œ, κ°œλ°œν™˜κ²½μ΄ μ€€λΉ„λ˜μ—ˆλ‹€λ©΄, Dotnet Maui μ΅œμ‹  버전을 μ μš©ν•΄μ„œ 앱을 μ œμΆœν•˜λ©΄ ν•΄κ²°λ©λ‹ˆλ‹€.

마침

μ΄λ ‡κ²Œ μ˜¬ν•΄λ„ λ¬΄μ‚¬νžˆ ꡬ글 ν”Œλ ˆμ΄ μ½˜μ†”μ˜ μš”κ΅¬μ‚¬ν•­μ„ 적절히 맞좰 λ„˜μ–΄κ°ˆ 수 μžˆμ—ˆμŠ΅λ‹ˆλ‹€.