Beispiel #1
0
    void ChooseAndroidProject(string jsonpath)
    {
        if (BuildToFolder == null)
        {
            ShowNotification(new GUIContent("请选择打包的路径")); return;
        }
        string           PluginsName     = new DirectoryInfo(jsonpath).Name; //找到plugins文件夹的名字
        SavedPliginsPath CopyPliginsPath = new SavedPliginsPath(PluginsName);

        string  txt            = File.ReadAllText(CopyPliginsPath.JsonPath, Encoding.UTF8);
        Project ChoosedSetting = JsonUtility.FromJson <Project>(txt);

        string TitleTxt         = UtilTHIS.ProjectToString(ChoosedSetting);
        bool   SetPlayerSetting = EditorUtility.DisplayDialog("配置信息", TitleTxt + "\n自动设置AndroidAPI等级为18-22", "打包", "关闭");

        if (SetPlayerSetting)
        {
            SetProjectSetting(ChoosedSetting);
            if (Directory.Exists(SDKPluginsPath.MeAndroidDir))
            {
                Directory.Delete(SDKPluginsPath.MeAndroidDir, true);
            }

            AssetDatabase.Refresh();
            AssetDatabase.SaveAssets();
            UtilTHIS.CopyOldLabFilesToNewLab(CopyPliginsPath.PluginsPath, SDKPluginsPath.MeAndroidDir);
            AssetDatabase.Refresh();
            AssetDatabase.SaveAssets();
            Build(ChoosedSetting);
            OpenFolder(BuildToFolder);

            AssetDatabase.Refresh();
            AssetDatabase.SaveAssets();
        }
    }
Beispiel #2
0
    void GUIAddConfing()
    {
        GUILayout.BeginVertical();
        //绘制标题
        GUILayout.Space(10);
        //是否开启添加配置信息

        ISaddConfig = EditorGUILayout.Toggle("是否添加配置信息", ISaddConfig);

        if (ISaddConfig)
        {
            GUILayout.Label("配置信息");
            tempProject.Name              = EditorGUILayout.TextField("配置信息名字:", tempProject.Name);
            tempProject.CompanyName       = EditorGUILayout.TextField("公司名:", tempProject.CompanyName);
            tempProject.ProjectName       = EditorGUILayout.TextField("软件名:", tempProject.ProjectName);
            tempProject.IconName          = EditorGUILayout.TextField("Icon路径:", tempProject.IconName);
            tempProject.PackageName       = EditorGUILayout.TextField("包名:", tempProject.PackageName);
            tempProject.Version           = EditorGUILayout.TextField("版本:", tempProject.Version);
            tempProject.BundleVersionCode = EditorGUILayout.TextField("bundleVersionCode:", tempProject.BundleVersionCode);

            IsSign = EditorGUILayout.Toggle("是否签名:", IsSign);
            if (IsSign)
            {
                tempProject.IsSign = true;

                SaveKaystorePath(tempProject);
            }
            else
            {
                tempProject.IsSign       = false;
                tempProject.KeystorePath = null;
                tempProject.KeyaliasName = null;
                tempProject.KeystorePass = null;
                tempProject.KeyaliasPass = null;
            }
            GUILayout.BeginHorizontal();

            if (GUILayout.Button("保存配置信息", GUILayout.Height(20), GUILayout.Width(200)))
            {
                SavedPliginsPath path = new SavedPliginsPath(tempProject.Name);

                Project SaveProject = tempProject;
                UtilTHIS.CreatBag(path, SaveProject);
                ISaddConfig  = false;
                ISFindConfig = true;
            }
            GUILayout.EndHorizontal();
        }

        GUILayout.EndVertical();
    }
Beispiel #3
0
    public static void CreatBag(SavedPliginsPath path, Project SaveProject)
    {
        if (!Directory.Exists(path.PluginsPath))
        {
            Directory.CreateDirectory(path.PluginsPath);
        }
        else
        {
            return;
        }
        string       str = SaveProject.SaveToString();
        StreamWriter sw  = new StreamWriter(path.JsonPath);

        sw.WriteLine(str);
        sw.Close();
        AssetDatabase.Refresh();
        AssetDatabase.SaveAssets();
    }
Beispiel #4
0
    /// <summary>
    /// 创建空包。不包含sdk
    /// </summary>
    void CreatEmtryBag()
    {
        ISFindConfig = false;
        SavedPliginsPath path = new SavedPliginsPath("空包");

        Project SaveProject = new Project();

        SaveProject.Name              = path.Name;
        SaveProject.CompanyName       = "趣多多";
        SaveProject.ProjectName       = PlayerSettings.productName;
        SaveProject.IconName          = "无";
        SaveProject.PackageName       = PlayerSettings.applicationIdentifier;
        SaveProject.Version           = "1.0";
        SaveProject.BundleVersionCode = "10";
        SaveProject.IsSign            = true;

        SaveKaystorePath(SaveProject);
        UtilTHIS.CreatBag(path, SaveProject);
        ISFindConfig = true;
    }
Beispiel #5
0
    void GUIChangeConfig()
    {
        GUILayout.BeginVertical();
        //绘制标题
        GUILayout.Space(10);
        //是否开启添加配置信息
        ISChangeConfig = EditorGUILayout.Toggle("是否修改配置信息", ISChangeConfig);
        if (ISChangeConfig)
        {
            string SDKPluginspath = SDKPluginsPath.path;
            if (!Directory.Exists(SDKPluginspath))
            {
                this.ShowNotification(new GUIContent("暂无配置信息文件夹,以自动创建")); Directory.CreateDirectory(SDKPluginspath); return;
            }
            if (Directory.GetDirectories(SDKPluginspath).Length == 0)
            {
                this.ShowNotification(new GUIContent("暂无配置信息,请添加配置2")); return;
            }

            string[] SDKNames = Directory.GetDirectories(SDKPluginspath);
            GUILayout.Space(10);
            if (IsCanShowBtn)
            {
                for (int i = 0; i < SDKNames.Length; i++)
                {
                    if (GUILayout.Button(SDKNames[i], GUILayout.Width(20), GUILayout.ExpandWidth(true)))
                    {
                        IsCanShowBtn = false;
                        if (BuildToFolder == null)
                        {
                            ShowNotification(new GUIContent("请选择打包的路径")); return;
                        }
                        string           PluginsName = new DirectoryInfo(SDKNames[i]).Name; //找到plugins文件夹的名字
                        SavedPliginsPath PliginsPath = new SavedPliginsPath(PluginsName);
                        string           txt         = File.ReadAllText(PliginsPath.JsonPath, Encoding.UTF8);
                        ChangeProject = JsonUtility.FromJson <Project>(txt);
                    }
                }
            }
            else
            {
                if (ChangeProject != null)
                {
                    GUILayout.Label(ChangeProject.Name);
                    ChangeProject.ProjectName       = EditorGUILayout.TextField("软件名:", ChangeProject.ProjectName);
                    ChangeProject.IconName          = EditorGUILayout.TextField("Icon路径:", ChangeProject.IconName);
                    ChangeProject.PackageName       = EditorGUILayout.TextField("包名:", ChangeProject.PackageName);
                    ChangeProject.Version           = EditorGUILayout.TextField("版本:", ChangeProject.Version);
                    ChangeProject.BundleVersionCode = EditorGUILayout.TextField("bundleVersionCode:", ChangeProject.BundleVersionCode);

                    if (GUILayout.Button("保存配置信息", GUILayout.Height(20), GUILayout.Width(200)))
                    {
                        SavedPliginsPath path = new SavedPliginsPath(ChangeProject.Name);
                        if (File.Exists(path.JsonPath))
                        {
                            File.Delete(path.JsonPath);
                        }
                        AssetDatabase.Refresh();
                        AssetDatabase.SaveAssets();

                        string       str = ChangeProject.SaveToString();
                        StreamWriter sw  = new StreamWriter(path.JsonPath);
                        sw.WriteLine(str);
                        sw.Close();
                        AssetDatabase.Refresh();
                        AssetDatabase.SaveAssets();

                        string TitleTxt = UtilTHIS.ProjectToString(ChangeProject);
                        EditorUtility.DisplayDialog("配置信息更改完毕", TitleTxt, "确认");
                        ChangeProject  = null;
                        ISChangeConfig = false;
                    }
                }
            }
        }
        else
        {
            IsCanShowBtn = true;
        }
        GUILayout.EndVertical();
    }