Пример #1
0
    /// <summary>
    /// 初始化配置
    /// </summary>
    public void Init()
    {
        if (!AppConst.DebugMode)
        {
            LoadResCfg();
        }
        else
        {
#if UNITY_EDITOR
            TextAsset resCfgtext = AssetDatabase.LoadAssetAtPath <TextAsset>(AppConst.CoreDef.EditorResCfgPath);
            if (resCfgtext == null)
            {
                Debug.LogError("无法加载到资源配置表2");
            }
            else
            {
                resCfg = JsonUtility.FromJson <ResCfg>(resCfgtext.text);
            }
#endif
        }
        if (resCfg != null)
        {
            foreach (ResInfoData info in resCfg.resources)
            {
                if (!string.IsNullOrEmpty(info.ABName))
                {
                    info.ABName = info.ABName.ToLower();
                }
            }
        }
        localGameCfg = Resources.Load <LocalGameCfgData>("gamecfg");
        localGameCfg.Init();
    }
Пример #2
0
    public static LocalGameCfgData Create()
    {
        LocalGameCfgData data = CreateInstance <LocalGameCfgData>();

        UnityEditor.AssetDatabase.CreateAsset(data, "Assets/YKFramwork/Resources/gamecfg.asset");
        UnityEditor.AssetDatabase.SaveAssets();
        return(data);
    }
Пример #3
0
    public static void SetLocalGameCfg(BuildCollectionResInfo buildInfo)
    {
        LocalGameCfgData localdata = Resources.Load <LocalGameCfgData>("gamecfg");

        localdata.chanelType   = Channel;
        localdata.isPublic     = isPublic;
        localdata.collectionID = buildInfo.CollectionID;
        EditorUtility.SetDirty(localdata);
        AssetDatabase.SaveAssets();
    }
Пример #4
0
    public static void BuildForIos(BuildCollectionResInfo buildCfg)
    {
        string assetName = (int)currentCollection + "";

        if (buildCfg.isTrans)
        {
            assetName += "Trans";
        }
        else
        {
            if (Channel == (int)ChannelType.AppStore)
            {
                assetName += "Appstore";
            }
        }
        assetName += ".asset";
        LocalGameCfgData localdata  = Resources.Load <LocalGameCfgData>("gamecfg");
        string           installUrl = localdata.OSSROOT + "/{0}/{1}/{2}/{3}/ios/1.ipa";
        string           verTypeStr = "";

        PlayerSettings.SetScriptingBackend(BuildTargetGroup.iOS, ScriptingImplementation.IL2CPP);
        PlayerSettings.SetArchitecture(BuildTargetGroup.iOS, 2);
        if (Channel == (int)ChannelType.AppStore)
        {
            PlayerSettings.SetApplicationIdentifier(BuildTargetGroup.iOS, buildCfg.IOSAppStorePackName);
        }
        else
        {
            PlayerSettings.SetApplicationIdentifier(BuildTargetGroup.iOS, buildCfg.IOSPackName);
        }
        PlayerSettings.iOS.appInBackgroundBehavior = iOSAppInBackgroundBehavior.Custom;
        PlayerSettings.iOS.backgroundModes         = iOSBackgroundMode.Audio | iOSBackgroundMode.RemoteNotification;


        if (isPublic)
        {
            verTypeStr = "public";
        }
        else
        {
            verTypeStr = "test";
        }

        installUrl = string.Format(installUrl, buildCfg.CollectionID, Channel, verTypeStr, version);

        string txt = File.ReadAllText(Application.dataPath + "/YKFramwork/Editor/AutoBuild/Install.plist");

        txt = txt.Replace("#{url}#", installUrl)
              .Replace("#version#", InstallVersion)
              .Replace("#iconurl#", localdata.OSSROOT + "/" + buildCfg.CollectionID + "/icon.png")
              .Replace("#PackName#", buildCfg.IOSPackName)
              .Replace("#GameName#", buildCfg.CollectionName);

        File.WriteAllText(Application.streamingAssetsPath + "/Install.plist",
                          txt);
        string[] scenes = null;
        if (buildCfg.isTrans)
        {
            scenes = GetTransBuildScenes;
        }
        else
        {
            scenes = GetBuildScenes;
        }

#if UNITY_IOS
        PlayerPrefs.SetString(XcodeProjectUpdater.SETTING_DATA_PATHKEY, "Assets/YKFramwork/Editor/AutoBuild/" + assetName);
        PlayerSettings.iOS.allowHTTPDownload           = true;
        PlayerSettings.iOS.appleEnableAutomaticSigning = false;
        string res = BuildPipeline.BuildPlayer(scenes, outpath, BuildTarget.iOS, BuildOptions.None);
#endif
    }