Exemple #1
0
 //发布 app和资源包
 private static void PublishPackage(bool mPackageBuildSuccess)
 {
     //上传资源包
     if (mPackageBuildSuccess && GBuilderConfigure.Configure.PublishRes)
     {
         ///scp 命令  -r  递归复制整个目录。  src 可以使一个目录 一个文件 会是 /src/* 目录下全部  dst 对应src 拷贝目录时没有目录路径会创建重命名为目标路径 有目标路径文件夹时拷贝到目标目录下 文件名不变 目标路径是多级不存在的路径会失败 拷贝文件时不会自动创建目录
         //安装包
         CmdHelper.ExcuteProcess("scp", string.Format("-r {0} {1}", LocalBuildAppPath(), VersionAppPublishPath()));
         //资源包
         CmdHelper.ExcuteProcess("scp", string.Format("-r {0} {1}", LocalBundleVersionBundleDataPath(), VersionResPublishPath()));
         //版本文件
         CmdHelper.ExcuteProcess("scp", string.Format("-r {0} {1}", LocalBundleVersionFilePath(), VersionResPublishPath()));
         //签名文件
         CmdHelper.ExcuteProcess("scp", string.Format("-r {0} {1}", LocalBundleCodeSignFilePath(), VersionResPublishPath()));
         //对比结果
         // CmdHelper.ExcuteProcess("scp", string.Format("-r {0} {1}", mComparePath, resPublishPath));
     }
 }
Exemple #2
0
    //导出xcode项目 编译生成ipa
    private static void CompileXCode(ref bool mPlayerBuildSuccess)
    {
        BuildTarget mBuildTarget = GBuilderConfigure.Configure.AppBuildTarget;

        if (mPlayerBuildSuccess && mBuildTarget == BuildTarget.iOS)
        {
            if (mBuildTarget == BuildTarget.iOS)
            {
                //不带后缀的应用名
                string       appName   = GBuilderConfigure.Configure.AppName;
                string       buildPath = GBuilderConfigure.Configure.BuildPath;
                BuildOptions opts      = GBuilderConfigure.Configure.Options;
                //调试模式
                bool mBuildDebug = (opts & BuildOptions.Development) == BuildOptions.Development;
                //生成archive文件
                string archiveParams = string.Format("archive -project {1}/ExportXcodeProject/Unity-iPhone.xcodeproj -scheme Unity-iPhone -configuration {0} -archivePath {1}/Unity-iPhone.xcarchive -quiet -UseModernBuildSystem=NO", mBuildDebug ? "Debug" : "Release", buildPath);
                bool   archiveRet    = CmdHelper.ExcuteProcess("xcodebuild", archiveParams);
                if (!archiveRet)
                {
                    Debug.LogError("xcodebuild archive Failed!"); return;
                }
                //导出符号表
                bool dSYMRet = CmdHelper.ExcuteProcess("cp", string.Format("-rf {0}/Unity-iPhone.xcarchive/dSYMs/projectf.app.dSYM {0}", buildPath));
                if (!dSYMRet)
                {
                    Debug.LogError("cp dSYMRet Failed!"); return;
                }
                //生成ipa文件
                string ipaParams = string.Format("-exportArchive -archivePath {0}/Unity-iPhone.xcarchive -exportPath {0} -exportOptionsPlist {0}/../SDK/iOS/export_options.plist -quiet -UseModernBuildSystem=NO", buildPath);
                bool   ipaRet    = CmdHelper.ExcuteProcess("xcodebuild", ipaParams);
                if (!ipaRet)
                {
                    Debug.LogError("xcodebuild exportArchive Failed!"); return;
                }
                string oldname = PathHelper.Combine(buildPath, "Unity-iPhone.ipa");
                string newname = PathHelper.Combine(buildPath, appName, PathHelper.GetAppPlatformExt(mBuildTarget));
                FileHelper.Rename(oldname, newname);
            }
        }
    }