Beispiel #1
0
        public static void UploadPackage(UploadInfo uploadInfo)
        {
            // MultyFrameworkEditorTool.CreateVersionJson(uploadInfo.assetPath, uploadInfo);
            AssetDatabase.ExportPackage(uploadInfo.assetPath, uploadInfo.name + ".unitypackage",
                                        ExportPackageOptions.Recurse);
            byte[]  bytes = File.ReadAllBytes("Assets/../" + uploadInfo.name + ".unitypackage");
            PkgInfo form  = new PkgInfo()
            {
                unity_version = uploadInfo.unityVersion,
                author        = uploadInfo.author,
                pkg_path      = uploadInfo.assetPath,
                pkg_name      = uploadInfo.name,
                version       = uploadInfo.version,
                dependences   = "",
                permissions   = uploadInfo.isPublic
                    ? PkgConstant.PKG_PERMISSIONS_PUBLIC
                    : PkgConstant.PKG_PERMISSIONS_PRIVATE,
                help_url    = uploadInfo.helpurl,
                describtion = uploadInfo.describtion,
            };

            for (int i = 0; i < uploadInfo.dependences.Count; i++)
            {
                form.AddDependences(uploadInfo.dependences[i]);
            }

            HttpPkg.UploadPkg(form, bytes, (m) =>
            {
                string source = "Assets/../" + uploadInfo.name + ".unitypackage";
                string dest   = Path.Combine(localPkgPath, uploadInfo.name + "_" + uploadInfo.version + ".unitypackage");
                if (File.Exists(dest))
                {
                    File.Delete(dest);
                }
                File.Move(source, dest);
                FreshWebCollection();
            });
        }