Esempio n. 1
0
        private void OnGUI()
        {
            scrollPos = EditorGUILayout.BeginScrollView(scrollPos, GUILayout.Width(500), GUILayout.Height(400));
            GUILayout.BeginVertical();
            GUILayout.BeginHorizontal();
            GUILayout.Label("PersistanePath:");
            GUILayout.TextField(Application.persistentDataPath);
            GUILayout.EndHorizontal();
            if (GUILayout.Button("Go To Persistance"))
            {
                EditorUtility.RevealInFinder(Application.persistentDataPath);
            }

            DrawMenu();

            isEnableGenerateClass = GUILayout.Toggle(isEnableGenerateClass, "auto generate class");
            ResKitAssetsMenu.SimulateAssetBundleInEditor =
                GUILayout.Toggle(ResKitAssetsMenu.SimulateAssetBundleInEditor, "Simulation Mode");

            GUILayout.BeginHorizontal();
            GUILayout.Label("ResVersion:");
            resVersion = GUILayout.TextField(resVersion);
            GUILayout.EndHorizontal();

            if (GUILayout.Button("Build"))
            {
                BuildWithTarget(EditorUserBuildSettings.activeBuildTarget);
                Close();
            }

            if (GUILayout.Button("ForceClear"))
            {
                ForceClear();
            }

            GUILayout.EndVertical();
            GUILayout.Space(50);

            EditorGUILayout.EndScrollView();

            GUILayout.BeginHorizontal();
            GUILayout.Label("Url:");
            mHttpUrl = GUILayout.TextField(mHttpUrl);
            GUILayout.EndHorizontal();

            if (GUILayout.Button("Http Get"))
            {
                ObservableWWW.Get(mHttpUrl).Subscribe(response => { Log.E(response); });
            }

            if (GUILayout.Button("Http Post"))
            {
//				WWWForm form = new WWWForm();
//				form.AddField("content", "123");
//				ObservableWWW.Post("http://127.0.0.1:8000/demo/save/", form)
//					.Subscribe(response => { Log.E(response); });

                ObservableWWW.Get("http://127.0.0.1:8000/demo/save/?content=" + new OK().ToJson()).Subscribe(response => { Log.E(response); });
            }
        }
        private void OnShow()
        {
            ObservableWWW.Get(URL_GITHUB_API_LATEST_RELEASE).Subscribe(response =>
            {
                var latestedVersionInfo = FrameworkVersionInfo.ParseLatest(response);
                latestedVersionInfo.Assets.ForEach(asset =>
                {
                    Log.I(asset.Name);
                    if (asset.Name.StartsWith("QFramework"))
                    {
                        var version      = asset.Name.Replace("QFramework_v", string.Empty).Replace(".unitypackage", string.Empty);
                        var versionChars = version.Split('.');
                        int versionCode  = 0;

                        versionChars.ForEach(versionChar =>
                        {
                            versionCode *= 100;
                            versionCode += versionChar.ToInt();
                        });

                        Log.I(versionCode);
                        // 版本比较
                        ObservableWWW.GetAndGetBytes(asset.BrowserDownloadUrl).Subscribe(bytes =>
                        {
                            File.WriteAllBytes(Application.dataPath + "/" + asset.Name, bytes);

                            AssetDatabase.ImportPackage(Application.dataPath + "/" + asset.Name, true);
                        });
                    }
                });
            }, e =>
            {
                Log.E(e);
            });
        }
Esempio n. 3
0
        public void LocalVersionGetter(Action <DLLVersion> onLocalVersionGetted)
        {
            if (ILRuntimeScriptSetting.LoadDLLFromStreamingAssetsPath)
            {
                var localJsonFile =
                    StreamingAssetPath.CombinePath(
                        "AssetBundles/{0}/hotfix.json".FillFormat(AssetBundleSettings.GetPlatformForAssetBundles(Application.platform)));

                ObservableWWW.Get(localJsonFile).Subscribe(content =>
                {
                    var localVersion = content.FromJson <DLLVersion>();

                    onLocalVersionGetted(localVersion);
                });
            }
            else
            {
                var localJsonFile =
                    PersistentDataPath.CombinePath(
                        "AssetBundles/{0}/hotfix.json".FillFormat(AssetBundleSettings.GetPlatformForAssetBundles(Application.platform)));

                var localVersion = localJsonFile.LoadJson <DLLVersion>();

                onLocalVersionGetted(localVersion);
            }
        }
 private void OnShow()
 {
     ObservableWWW.Get(URL_GITHUB_API_LATEST_RELEASE).Subscribe(response =>
     {
         Log.I(response);
         var latestedVersionInfo = FrameworkVersionInfo.ParseLatest(response);
         Log.I(latestedVersionInfo.Assets.Count);
     });
 }
Esempio n. 5
0
        private void OnGUI()
        {
            scrollPos = EditorGUILayout.BeginScrollView(scrollPos, GUILayout.Width(500), GUILayout.Height(400));
            GUILayout.BeginVertical();
            GUILayout.BeginHorizontal();
            GUILayout.Label("PersistanePath:");
            GUILayout.TextField(Application.persistentDataPath);
            GUILayout.EndHorizontal();
            if (GUILayout.Button("Go To Persistance"))
            {
                EditorUtility.RevealInFinder(Application.persistentDataPath);
            }

            DrawMenu();

            isEnableGenerateClass = GUILayout.Toggle(isEnableGenerateClass, "auto generate class");
            ResKitAssetsMenu.SimulateAssetBundleInEditor =
                GUILayout.Toggle(ResKitAssetsMenu.SimulateAssetBundleInEditor, "Simulation Mode");

            GUILayout.BeginHorizontal();
            GUILayout.Label("ResVersion:");
            resVersion = GUILayout.TextField(resVersion);
            GUILayout.EndHorizontal();

            if (GUILayout.Button("1.Gen Res Tree File"))
            {
                AssetBundleExporter.BuildDataTable();
            }

            if (GUILayout.Button("2.Build"))
            {
                AssetBundleExporter.BuildDataTable();
                BuildWithTarget(EditorUserBuildSettings.activeBuildTarget);
            }

            if (GUILayout.Button("ForceClear"))
            {
                ForceClear();
            }

            GUILayout.EndVertical();
            GUILayout.Space(50);

            EditorGUILayout.EndScrollView();


            GUILayout.BeginHorizontal();
            GUILayout.Label("Url:");
            mHttpUrl = GUILayout.TextField(mHttpUrl);
            GUILayout.EndHorizontal();

            if (GUILayout.Button("Http Test"))
            {
                ObservableWWW.Get(mHttpUrl).Subscribe(response => { Log.E(response); });
            }
        }
Esempio n. 6
0
 protected override void OnBegin()
 {
     ObservableWWW.Get("http://sikiedu.com")
     .Subscribe(text =>
     {
         text.LogInfo();
         Finish();
     }, e =>
     {
         e.LogException();
     });
 }
Esempio n. 7
0
        protected override void OnBegin()
        {
            ObservableWWW.Get("http://liangxiegame.com/demo/get_all_demo_info").Subscribe(response =>
            {
                var responseJson        = JObject.Parse(response);
                JArray packageInfosJson = responseJson ["all_demo_info"] as JArray;

                var packageDatas = new List <PackageData> ();
                foreach (var demoInfo in packageInfosJson)
                {
                    var name = demoInfo ["name"].Value <string> ();

                    var package = packageDatas.Find(packageData => packageData.Name == name);

                    if (package == null)
                    {
                        package = new PackageData()
                        {
                            Name = name,
                        };

                        packageDatas.Add(package);
                    }

                    var version     = demoInfo ["version"].Value <string> ();
                    var url         = demoInfo ["download_url"].Value <string> ();
                    var installPath = demoInfo ["install_path"].Value <string> ();

                    package.PackageVersions.Add(new PackageVersion()
                    {
                        Version     = version,
                        DownloadUrl = url,
                        InstallPath = installPath
                    });
                }

                packageDatas.ForEach(packageData => packageData.PackageVersions.Sort((a, b) => GetVersionNumber(b.Version) - GetVersionNumber(a.Version)));

                mOnGet.InvokeGracefully(packageDatas);

                new PackageInfosRequestCache()
                {
                    PackageDatas = packageDatas
                }.Save();

                Finished = true;
            }, e =>
            {
                mOnGet.InvokeGracefully(null);
                Log.E(e);
            });
        }
Esempio n. 8
0
        public void ServerVersionGetter(Action <DLLVersion> onServerVersionGetted)
        {
            ObservableWWW.Get(ServerHost + "hotfix.json").Subscribe(result =>
            {
                result.LogInfo();

                var serverVersion = result.FromJson <DLLVersion>();

                Debug.Log(serverVersion.Version);

                onServerVersionGetted(serverVersion);
            });
        }
        protected override void OnBegin()
        {
            Dictionary <string, string> headers = null;

            if (User.Logined)
            {
                headers = new Dictionary <string, string>()
                {
                    { "Authorization", "Token " + User.Token }
                };
            }

            ObservableWWW.Get("http://liangxiegame.com/api/packages/", headers).Subscribe(response =>
            {
                var responseJson     = JArray.Parse(response);
                var packageInfosJson = responseJson;

                var packageDatas = new List <PackageData> ();
                foreach (var packageInfo in packageInfosJson)
                {
                    var name = packageInfo["name"].Value <string>();

                    var package = packageDatas.Find(packageData => packageData.Name == name);

                    if (package == null)
                    {
                        package = new PackageData()
                        {
                            Name = name,
                        };

                        packageDatas.Add(package);
                    }

                    var version      = packageInfo["version"].Value <string>();
                    var url          = packageInfo["file"].Value <string>();           // download_url
                    var installPath  = packageInfo["install_path"].Value <string>();
                    var release_note = packageInfo["release_note"].Value <string>();

                    var releaseItem     = new ReleaseItem(version, release_note, "liangxie", "now");
                    var typeName        = packageInfo["type"].Value <string>();
                    var accessRightName = packageInfo["access_right"].Value <string>();

                    var packageType = PackageType.FrameworkModule;

                    switch (typeName)
                    {
                    case "fm":
                        packageType = PackageType.FrameworkModule;
                        break;

                    case "s":
                        packageType = PackageType.Shader;
                        break;

                    case "agt":
                        packageType = PackageType.AppOrGameDemoOrTemplate;
                        break;

                    case "p":
                        packageType = PackageType.Plugin;
                        break;
                    }

                    var accessRight = PackageAccessRight.Public;

                    switch (accessRightName)
                    {
                    case "public":
                        accessRight = PackageAccessRight.Public;
                        break;

                    case "private":
                        accessRight = PackageAccessRight.Private;
                        break;
                    }

                    package.PackageVersions.Add(new PackageVersion()
                    {
                        Version     = version,
                        DownloadUrl = url,
                        InstallPath = installPath,
                        Type        = packageType,
                        AccessRight = accessRight,
                        Readme      = releaseItem,
                    });

                    package.readme.AddReleaseNote(releaseItem);
                }

                packageDatas.ForEach(packageData =>
                {
                    packageData.PackageVersions.Sort((a, b) =>
                                                     GetVersionNumber(b.Version) - GetVersionNumber(a.Version));
                    packageData.readme.items.Sort((a, b) =>
                                                  GetVersionNumber(b.version) - GetVersionNumber(a.version));
                });

                mOnGet.InvokeGracefully(packageDatas);

                new PackageInfosRequestCache()
                {
                    PackageDatas = packageDatas
                }.Save();

                Finished = true;
            }, e =>
            {
                mOnGet.InvokeGracefully(null);
                Log.E(e);
            });
        }
Esempio n. 10
0
 public IDisposable HttpGet(string url, Dictionary <string, string> headers, Action <string> onResponse)
 {
     return(ObservableWWW.Get(url, headers).Subscribe(onResponse));
 }