본문 바로가기
Unity

GADInvalidInitializationException: The Google Mobile Ads SDK was initialized without an application ID

by Derricks2 2022. 2. 15.
반응형

구글 애드몹 유니티 플러그인을 설치한 후  iOS 플랫폼에서 빌드시  "GADInvalidInitializationException: The Google Mobile Ads SDK was initialized without an application ID" Error Message가 발생하면서 Crash나는 경우 &&  GADApplicationIdentifier ID를 설정했음에도 불구하고 Crash 발생하는 경우

iOS Plist 파일에서 GADIsAdManagerApp 값을 True로 설정한다 

 

 

매번 유니티 빌드시 Plist 값을 수동으로 추가하면 안좋은 생산성을 가져온다 

Unity가제공하는 OnPostProcessBuild API를 사용하면 Unity Editor에서 Build가 끝나는 시점에 생성된 Xcode project에 값을 설정 할 수있다.

public static void OnPostProcessBuild(BuildTarget target, string path)

 

E.g

private static void OnIOSBuild(BuildTarget target, string path)
{
    LocalizeName.AddLocalizedStringsIOS(path, Path.Combine(Application.dataPath, "testframework/localizationForiOS"));
    
    string infoPlistPath = path + "/Info.plist";

    PlistDocument plistDoc = new PlistDocument();
    plistDoc.ReadFromFile(infoPlistPath);
    if (plistDoc.root != null) {
        plistDoc.root.SetBoolean(ADMOB_SETTING, true);
        plistDoc.WriteToFile(infoPlistPath);
    }
    else {
        Debug.LogError("ERROR: Can't open " + infoPlistPath);
    }
}

 

해당 Sample은 이곳에서 확인 가능하다 

https://github.com/superbderrick/UnityiOSLocalization

반응형