Пример #1
0
    public static Dictionary <EB.Language, string> DownloadTranslations()
    {
        string stoken = WWWUtils.AdminLogin();

        if (string.IsNullOrEmpty(stoken))
        {
            return(null);
        }

        var transData = new Dictionary <EB.Language, string>();

        var langs = new List <EB.Language>();

        langs.Add(EB.Language.English);
        langs.Add(EB.Language.ChineseSimplified);
        langs.Add(EB.Language.ChineseTraditional);

        foreach (var lang in langs)
        {
            var code = EB.Localizer.GetSparxLanguageCode(lang);
            var url  = WWWUtils.AdminUrl(string.Format("/localization/export/{0}?stoken={1}&format=csv&status=1&code=1", code, stoken));
            var csv  = WWWUtils.Get(url);
            if (string.IsNullOrEmpty(csv))
            {
                Debug.LogWarning("LocalizationUtils.WWWUtils.Get(" + url + ") = null");
                continue;
            }
            csv = csv.Replace(@"\\n", @"\n");
            transData.Add(lang, csv);
        }

        return(transData);
    }
Пример #2
0
    public static bool UploadTranslations()
    {
        string stoken = WWWUtils.AdminLogin();

        if (string.IsNullOrEmpty(stoken))
        {
            return(false);
        }

        var url = WWWUtils.AdminUrl("/localization/upload/english");

        EB.Localizer.Clear();
        var result = LoadAllFromResources(EB.Language.English, new string[] { "all" });
        // fixup all the \n
        var data = new Hashtable();

        foreach (var entry in result)
        {
            data[entry.Key] = entry.Value.Trim().Replace("\n", "\\n");
        }

        EB.Debug.Log(" source string count: " + data.Count);

        var form = new WWWForm();

        form.AddField("body", EB.JSON.Stringify(data));
        form.AddField("stoken", stoken);
        form.AddField("format", "json");
        return(WWWUtils.PostJson(url, form) != null);
    }
Пример #3
0
    static void UploadContentManifest(WWWUtils.Environment env, string url, int enabled)
    {
        var stoken  = WWWUtils.AdminLogin(env);
        var postUrl = WWWUtils.GetAdminUrl(env) + "/bundlemanager/content/from-manifest?stoken=" + stoken;
        var form    = new WWWForm();

        form.AddField("url", url);
        form.AddField("enabled", enabled);
        WWWUtils.Post(postUrl, form);
    }
Пример #4
0
    static void UploadApkFiles(string apkPath, WWWUtils.Environment env)
    {
        try
        {
            var tmpDir = "/tmp/apk";
            GeneralUtils.DeleteDirectory(tmpDir, true);               // mko: cleaning up build folder
            Directory.CreateDirectory(tmpDir);

            // unzip
            var res = CommandLineUtils.Run("/usr/bin/unzip", string.Format("-d {0} {1}", tmpDir, apkPath));
            Debug.Log(res);

            // generate the app.dll
            var files = new List <string>(Directory.GetFiles("/tmp/apk/assets/bin/Data/Managed", "*.dll", SearchOption.TopDirectoryOnly));
            files.Sort(System.StringComparer.OrdinalIgnoreCase);

            List <byte> bytes = new List <byte>();
            foreach (string filePath in files)
            {
                Debug.Log("Adding file " + filePath);
                bytes.AddRange(File.ReadAllBytes(filePath));
            }

            Debug.Log("MSIL size is " + EB.Localizer.FormatNumber(bytes.Count, true));

            WWWForm form = new WWWForm();
            form.AddBinaryData("data", bytes.ToArray(), "data");
            form.AddField("version", EB.Version.GetVersion());
            form.AddField("platform", "android");
            form.AddField("sha1", EB.Encoding.ToBase64String(EB.Digest.Sha1().Hash(bytes.ToArray())));

            var stoken  = WWWUtils.AdminLogin(env);
            var postUrl = WWWUtils.GetAdminUrl(env) + "/protect/upload?stoken=" + stoken;
            res = WWWUtils.Post(postUrl, form);
            Debug.Log("version: " + res);
        }
        catch (System.Exception e)
        {
            Debug.Log("Build Failed: exception: " + e.ToString());
            Failed(e);
        }
    }