Integrate

0. 최신 ADX Unity SDK 버전

circle-check

1. 최소 지원 사양

circle-info
  • Android

    • compileSdkVersion 35 이상

    • minSdkVersion 23 이상

  • iOS

    • iOS 13.0 이상

    • Xcode 16.0 이상

    • CocoaPods

  • Unity Editor

    • Unity 2019.4 이상

triangle-exclamation

2. ADX Unity SDK 추가

1) ADX Unity SDK를 다운로드arrow-up-right 합니다.

2) Assets > Import Package > Custom Package를 선택하여 다운로드한 ADXUnityPackage.unitypackage 파일을 찾아 추가하거나 ADXUnityPackage.unitypackage를 더블클릭하여 실행합니다.

circle-info

새로운 Package로 업데이트 시 ADXUnityPackage를 import 하기 전에, 아래의 폴더 및 파일을 모두 삭제하신 후 진행해주시기 바랍니다.

  • Assets/ADXLibrary 폴더 제거

  • Assets/GoogleMobileAds 폴더 제거

  • Assets/Plugins/Android 폴더 내에 AdMob 관련 파일 제거

  • Assets/Plugins/iOS 폴더 내에 AdMob 관련 파일 제거

3) 모든 파일을 선택하고 import 합니다.

4) Unity Play Services Resolverarrow-up-right가 이미 포함되어 있으시면 ADXUnityPackage에서 ExternalDependencyManager를 제외하신 후 import 해주시면 됩니다.

3. Project Setting

1) Android Setting

  • Assets/Plugins/Android 디렉토리에 mainTemplate.gradle 파일을 열어 android 섹션에서 compileOptions을 추가합니다.

  • Play Services Resolver 관련하여 아래 내용을 실행합니다.

    • Assets > External Dependency Manager > Android Resolver > Settings를 선택하고 Use Jetifier 체크 후 Force Resolver를 실행합니다.

circle-info

Jetifier 사용을 통한 AndroidX 관련 레거시 지원을 위해 반드시 설정하여 주시기 바랍니다.

2) iOS Setting

  • Assets > External Dependency Manager > iOS Resolver > Settings > Add use_frameworks! to Podfile에 체크가 되어 있는지 확인합니다.

  • Assets > External Dependency Manager > iOS Resolver > Settings > Link frameworks statically에 체크가 되어 있는지 확인합니다. (Unity 엔진 2019.4 이상 사용 시)

  • 유니티 에디터에서 빌드 후, *.xcworkspace (Unity-iPhone.xcworkspace) 확장자 파일을 Xcode에서 열기 합니다.

  • 프로젝트의 Bulid Settings에서 Enable BitcodeNo로 변경합니다.

<Build Settings - Enable Bitcode>
  • Unity 2019.3 버전 이상의 경우 Unity-iPhone 과 UnityFramework 모두 Enable BitcodeNo로 변경합니다.

<Build Settings - Enable Bitcode>
  • XCode > 빌드 타겟 (UnityFramework) 선택 > Build Settings > Ohter Linker Flags 에서 "-all-load" 또는 "-force_load" 플래그를 사용하여 빌드 할 경우, 심볼 중복 (Symbol Duplicate)가 발생할 수 있습니다. 이 경우 "-ObjC" 플래그로 변경하십시오.

    <Build Settings - Other Linker Flags>
  • 아래 빌드 타겟에 "$(inherited)" 추가 되어 있는지 확인하고 추가되어 있지 않다면 관련 라이브러리를 찾을 수 없다는 빌드 에러가 발생할 수 있으므로 추가해주십시오. - Xcode > 빌드 타겟 (Unity-iPhone) 선택 > Build Settings > Other Linker Flag - Xcode > 빌드 타겟 (UnityFramework) 선택 > Build Settings > Framework Search Paths

    <Build Settings - Other Linker Flags>

    <Build Settings - Framework Search Paths>

  • "Cannot use '@try' with Objective-C exceptions disabled" 와 같은 빌드 에러가 발생할 경우, 아래 설정 값을 'No'에서 'Yes'로 변경하여 주십시오. - Xcode > 빌드 타겟 (Unity-Framework) 선택 > Enable Objective-C Exceptions

<Build Settings - Enable Objective-C Exceptions>
  • AppStoreConnect에 업로드 (Xcode > Product > Archive) 시, "Always Embed Swift Standard Libraries" 설정값을 아래 그림과 같이 각 빌드 타겟에 맞게 설정하여 주십시오. 이 설정값에 따라서 AppStoreConnect에 업로드 실패가 발생할 수 있습니다.

4. iOS 14+ 지원

iOS 14 이상 지원하는 경우 IDFA (Identifier for Advertisers) 식별자를 얻기 위해 ATT(App Tracking Transparency) Frameworkarrow-up-right를 반드시 적용해야 합니다. 자세한 방법은 아래 링크를 참고해주세요.

App Tracking Transparencychevron-right

5. Notice

1) Android Gradle 버전 (유니티 엔진 버전 체크)

  • Gradle 권장 버전 이하 사용시 애드몹 유니티 플러그인에 의해 This feature requires ASM7 오류가 발생되며 아래의 방법 중 하나로 해결 가능합니다.

    • Gradle과 Gradle Plugin 변경을 통한 해결 (권장)

    • 유니티 엔진 업데이트를 통해 해결

2) AdMob App ID 초기화 문제

  • GoogleMobileAdsSettings에 입력한 App ID가 삭제되는 경우 Unity > Assets > Google Mobile Ads > Settings에서 Delay app measure를 체크 했다가 해제하여 주시기 바랍니다.

Last updated

Was this helpful?