| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- using UnityEngine;
- using UnityEditor;
- using System.IO;
- class OVRManifestPreprocessor
- {
- [MenuItem("Tools/Oculus/Create store-compatible AndroidManifest.xml", false, 100000)]
- public static void GenerateManifestForSubmission()
- {
- var so = ScriptableObject.CreateInstance(typeof(OVRPluginUpdaterStub));
- var script = MonoScript.FromScriptableObject(so);
- string assetPath = AssetDatabase.GetAssetPath(script);
- string editorDir = Directory.GetParent(assetPath).FullName;
- string srcFile = editorDir + "/AndroidManifest.OVRSubmission.xml";
- if (!File.Exists(srcFile))
- {
- Debug.LogError("Cannot find Android manifest template for submission." +
- " Please delete the OVR folder and reimport the Oculus Utilities.");
- return;
- }
- string manifestFolder = Application.dataPath + "/Plugins/Android";
- if (!Directory.Exists(manifestFolder))
- Directory.CreateDirectory(manifestFolder);
- string dstFile = manifestFolder + "/AndroidManifest.xml";
- if (File.Exists(dstFile))
- {
- Debug.LogWarning("Cannot create Oculus store-compatible manifest due to conflicting file: \""
- + dstFile + "\". Please remove it and try again.");
- return;
- }
- File.Copy(srcFile, dstFile);
- AssetDatabase.Refresh();
- }
- [MenuItem("Tools/Oculus/Remove AndroidManifest.xml")]
- public static void RemoveAndroidManifest()
- {
- AssetDatabase.DeleteAsset("Assets/Plugins/Android/AndroidManifest.xml");
- AssetDatabase.Refresh();
- }
- }
|