public static void BuildProject()
    {
        Directory.CreateDirectory(buildPath);

        // move unneeded resources
        if (Directory.Exists(testingResourcesBasePath))
        {
            if (Directory.Exists(testingResourcesTmpPath))
            {
                Directory.Delete(testingResourcesTmpPath);
                File.Delete(testingResourcesTmpMeta);
            }
            Directory.Move(testingResourcesBasePath, testingResourcesTmpPath);
            File.Move(testingResourcesBaseMeta, testingResourcesTmpMeta);
        }

        // perform builds for all platforms
        foreach (Tuple <string, BuildTarget> buildItem in BuildHelper.BuildNames(false))
        {
            PerformBuild(buildItem.Item1, buildItem.Item2, nameMapping[buildItem.Item1]);
        }

        if (Directory.Exists(testingResourcesTmpPath))
        {
            Directory.Move(testingResourcesTmpPath, testingResourcesBasePath);
            File.Move(testingResourcesTmpMeta, testingResourcesBaseMeta);
        }
    }
    public static void BuildAllAssetBundles()
    {
        Directory.CreateDirectory(assetBundleDirectory);

        // perform asset bundle build for each platform
        foreach (Tuple <string, BuildTarget> buildItem in BuildHelper.BuildNames(true))
        {
            PerformBuild(buildItem.Item1, buildItem.Item2);
        }
    }