Exemple #1
0
    public void OnPreprocessBuild(BuildTarget target, string path)
    {
        if (target == BuildTarget.Android)
        {
            var settings = AppCenterSettingsContext.SettingsInstance;
            if (settings.UsePush && AppCenter.Push != null)
            {
                FirebaseDependency.SetupPush();
            }
#if !APPCENTER_DONT_USE_NATIVE_STARTER
            var settingsMaker = new AppCenterSettingsMakerAndroid();
            AddStartupCode(settingsMaker);
#if UNITY_ANDROID
            AddSettingsFileToLoader(settingsMaker);
#endif
#endif
        }
        else if (target == BuildTarget.iOS)
        {
#if !APPCENTER_DONT_USE_NATIVE_STARTER
            AddStartupCode(new AppCenterSettingsMakerIos());
#endif
        }
        else if (target == BuildTarget.WSAPlayer)
        {
#if UNITY_WSA
            var currentMinimalPlatformVersion = new Version(EditorUserBuildSettings.wsaMinUWPSDK);
            if (currentMinimalPlatformVersion < RequiredMinimalUWPVersion)
            {
                Debug.LogWarning($"Minimum platform version should be set to {RequiredMinimalUWPVersion} or higher. App Center does not support lower versions but it is set to {currentMinimalPlatformVersion}");
            }
#endif
        }
    }
Exemple #2
0
    public static void AddSettingsFileToLoader(AppCenterSettingsMakerAndroid settingsMaker)
    {
        var          loaderZipFile        = AppCenterSettingsContext.AppCenterPath + "/Plugins/Android/appcenter-loader-release.aar";
        const string loaderFolder         = "appcenter-loader-release";
        const string settingsFilePath     = loaderFolder + "/res/values/appcenter-settings.xml";
        const string settingsMetaFilePath = loaderFolder + "/res/values/appcenter-settings.xml.meta";

        if (!File.Exists(loaderZipFile))
        {
            throw new IOException("Failed to load dependency file appcenter-loader-release.aar");
        }

        // Delete unzipped directory if it already exists.
        if (Directory.Exists(loaderFolder))
        {
            Directory.Delete(loaderFolder, true);
        }

        AndroidLibraryHelper.UnzipFile(loaderZipFile, loaderFolder);
        if (!Directory.Exists(loaderFolder))
        {
            throw new IOException("Unzipping loader folder failed.");
        }

        settingsMaker.CommitSettings(settingsFilePath);

        // Delete the appcenter-settings.xml.meta file if generated.
        if (File.Exists(settingsMetaFilePath))
        {
            File.Delete(settingsMetaFilePath);
        }

        // Delete the original aar file and zipped the extracted folder to generate a new one.
        File.Delete(loaderZipFile);
        AndroidLibraryHelper.ZipFile(loaderFolder, loaderZipFile);
        Directory.Delete(loaderFolder, true);
    }