示例#1
0
    static void CopySDKFile(string targetPath)
    {
        string Path = Application.dataPath + SDKFilePath;

        targetPath = targetPath.Remove(targetPath.Length - 1);
        ToolsHelper.CopyDirToDir(Path, targetPath);
    }
示例#2
0
    /// <summary>
    /// 复制版本包 实名认证文件
    /// </summary>
    /// <param name="targetPath"></param>
    static void CopyVerPackgetFile(string targetPath)
    {
        string Path = Application.dataPath + "/GameFramework/SDK/VerPackageFile";

        targetPath = targetPath.Remove(targetPath.Length - 1);
        ToolsHelper.CopyDirToDir(Path, targetPath);
    }
示例#3
0
    /// <summary>
    /// 安卓工程整理
    /// </summary>
    static void AndroidProjectArrangement(string TargetPath)
    {
        ToolsHelper.Log($"生成的工程路径:{TargetPath}");
        string ScrPath = "src/main";

        try
        {
            //把src/main/目录下jniLibs文件改成libs
            string JniLibsPath       = Path.Combine(TargetPath, ScrPath, "jniLibs");
            string JniLibsTargerPath = Path.Combine(TargetPath, ScrPath, "libs");
            Directory.Move(JniLibsPath, JniLibsTargerPath);
            //复制src/main文件夹下所有文件到根目录
            ToolsHelper.CopyDirToDir(Path.Combine(Path.Combine(TargetPath, ScrPath)), TargetPath.Remove(TargetPath.Length - 1));
            //删除src/文件夹
            Directory.Delete(Path.Combine(TargetPath, "src"), true);
            //java目录改成src目录
            Directory.Move(Path.Combine(TargetPath, "java"), Path.Combine(TargetPath, "src"));
            //复制SDK文件
            CopySDKFile(TargetPath);
        }
        catch (Exception e)
        {
            ToolsHelper.Error(e.Message);
        }
    }
示例#4
0
    /// <summary>
    /// 正式发布版本修改SDK文件路径和位置
    /// </summary>
    static void ReleaseSDKFileModify(string projectPath)
    {
        ToolsHelper.Log("发布修改代码包名");
        string ScriptDir      = "src/";
        string packgeName     = PlayerSettings.GetApplicationIdentifier(BuildTargetGroup.Android);
        string packgeNamePath = packgeName.Replace(".", "/");
        string targetDir      = projectPath + ScriptDir + packgeNamePath;

        string SourceDir  = "com/wedobest";
        string SourcePath = projectPath + ScriptDir + $"{SourceDir}/u3d/demo";

        //吧com/wedobest文件下的内容copy到包文件夹中
        ToolsHelper.CopyDirToDir(SourcePath, targetDir);
        Directory.Delete(projectPath + ScriptDir + SourceDir, true);

        //删除生成的UnityPlayerActivity.java文件
        string UnityPlayerActivityPath = targetDir + "/UnityPlayerActivity.java";

        if (File.Exists(UnityPlayerActivityPath))
        {
            File.Delete(UnityPlayerActivityPath);
        }

        //修改JAVA文件的包名
        var pattern     = "*";
        var allFileInfo = Directory.GetFiles(targetDir, pattern, SearchOption.AllDirectories);

        foreach (var item in allFileInfo)
        {
            ModifyJavaFile(item);
        }
        //修改AndroidManifest
        string MainfestPath = projectPath + "AndroidManifest.xml";

        if (File.Exists(MainfestPath))
        {
            try
            {
                string AndroidManifest = File.ReadAllText(MainfestPath);
                AndroidManifest = AndroidManifest.Replace("com.wedobest.u3d.demo", packgeName);
                AndroidManifest = AndroidManifest.Replace("pn5tLrJ0ZG+ndHN062QzZOt1ZW2qEQAAxREAAA==", GetAppSettingInfo(4));
                File.WriteAllText(MainfestPath, AndroidManifest);
            }
            catch (Exception e)
            {
                Debug.LogError(e);
            }
        }
        else
        {
            Debug.LogError($"未找到AndroidManifest.xml文件+{MainfestPath}");
        }
        //修改build.gradle文件
        string buildgradle = projectPath + "build.gradle";

        if (File.Exists(buildgradle))
        {
            try
            {
                string[] lines = File.ReadAllLines(buildgradle);

                for (int i = 0; i < lines.Length; i++)
                {
                    if (lines[i].Contains("UnityAdsTest"))
                    {
                        lines[i] = $"//{lines[i]}";
                        break;
                    }
                }
                File.WriteAllLines(buildgradle, lines);
            }
            catch (Exception e)
            {
                Debug.LogError(e);
            }
        }
        else
        {
            Debug.LogError($"未找到build.gradle文件+{buildgradle}");
        }
        //修改AdsConstant.java文件
        string AdsConstantPath = projectPath + "src/com/pdragon/ad/AdsConstant.java";

        if (File.Exists(AdsConstantPath))
        {
            try
            {
                string[] lines = File.ReadAllLines(AdsConstantPath);

                for (int i = 0; i < lines.Length; i++)
                {
                    if (lines[i].Contains("public final static String BUGLY_ID"))
                    {
                        lines[i] = $@"	public final static String BUGLY_ID=""{GetAppSettingInfo(0)}"";";
                    }
                    if (lines[i].Contains("public final static String BUGLY_KEY"))
                    {
                        lines[i] = $@"	public final static String BUGLY_KEY=""{GetAppSettingInfo(1)}"";";
                    }
                }
                File.WriteAllLines(AdsConstantPath, lines);
            }
            catch (Exception e)
            {
                Debug.LogError(e);
            }
        }
        else
        {
            Debug.LogError($"未找到AdsConstant.java文件+{AdsConstantPath}");
        }

        //修改PrjBuild.ini文件
        string PrjBuild = projectPath + "PrjBuild.ini";

        if (File.Exists(PrjBuild))
        {
            try
            {
                string[] lines = File.ReadAllLines(PrjBuild);

                for (int i = 0; i < lines.Length; i++)
                {
                    if (lines[i].Contains("sign="))
                    {
                        lines[i] = $"sign={GetAppSettingInfo(5)}";
                    }
                }
                File.WriteAllLines(PrjBuild, lines);
            }
            catch (Exception e)
            {
                Debug.LogError(e);
            }
        }
        else
        {
            Debug.LogError($"未找到PrjBuild.ini文件+{PrjBuild}");
        }
    }