示例#1
0
    public void PatchAndroidManifest(string path)
    {
        string manifestFolder = Path.Combine(path, "src/main");
        string file           = manifestFolder + "/AndroidManifest.xml";

        bool patchedSecurityConfig = false;
        // If Enable NSC Config, copy XML file into gradle project
        OVRProjectConfig projectConfig = OVRProjectConfig.GetProjectConfig();

        if (projectConfig != null)
        {
            if (projectConfig.enableNSCConfig)
            {
                string securityConfigFile = GetOculusProjectNetworkSecConfigPath();
                string xmlDirectory       = Path.Combine(path, "src/main/res/xml");
                try
                {
                    if (!Directory.Exists(xmlDirectory))
                    {
                        Directory.CreateDirectory(xmlDirectory);
                    }
                    File.Copy(securityConfigFile, Path.Combine(xmlDirectory, "network_sec_config.xml"), true);
                    patchedSecurityConfig = true;
                }
                catch (Exception e)
                {
                    UnityEngine.Debug.LogError(e.Message);
                }
            }
        }

        OVRManifestPreprocessor.PatchAndroidManifest(file, enableSecurity: patchedSecurityConfig);
    }
示例#2
0
    public void PatchAndroidManifest(string path)
    {
        string manifestFolder = Path.Combine(path, "src/main");
        string file           = manifestFolder + "/AndroidManifest.xml";

        bool patchedSecurityConfig = false;
        // If Enable NSC Config, copy XML file into gradle project
        OVRProjectConfig projectConfig = OVRProjectConfig.GetProjectConfig();

        if (projectConfig != null)
        {
            if (projectConfig.enableNSCConfig)
            {
                // If no custom xml security path is specified, look for the default location in the integrations package.
                string securityConfigFile = projectConfig.securityXmlPath;
                if (string.IsNullOrEmpty(securityConfigFile))
                {
                    securityConfigFile = GetOculusProjectNetworkSecConfigPath();
                }
                else
                {
                    Uri configUri   = new Uri(Path.GetFullPath(securityConfigFile));
                    Uri projectUri  = new Uri(Application.dataPath);
                    Uri relativeUri = projectUri.MakeRelativeUri(configUri);
                    securityConfigFile = relativeUri.ToString();
                }

                string xmlDirectory = Path.Combine(path, "src/main/res/xml");
                try
                {
                    if (!Directory.Exists(xmlDirectory))
                    {
                        Directory.CreateDirectory(xmlDirectory);
                    }
                    File.Copy(securityConfigFile, Path.Combine(xmlDirectory, "network_sec_config.xml"), true);
                    patchedSecurityConfig = true;
                }
                catch (Exception e)
                {
                    UnityEngine.Debug.LogError(e.Message);
                }
            }
        }

        OVRManifestPreprocessor.PatchAndroidManifest(file, enableSecurity: patchedSecurityConfig);
    }