private void ReportBuildTargetPermissions() { List <string> permissionsList = new List <string>(); List <string> featuresList = new List <string>(); string manifestFilePath = Path.Combine(s_StagingArea, s_AndroidManifest); if (EditorUserBuildSettings.androidBuildSystem == AndroidBuildSystem.Gradle) { manifestFilePath = (EditorUserBuildSettings.androidBuildType == AndroidBuildType.Release) ? Paths.Combine(s_GradlePath, "release", s_AndroidManifest) : Paths.Combine(s_GradlePath, "debug", s_AndroidManifest); } XmlDocument manifestFile = new XmlDocument(); if (File.Exists(manifestFilePath)) { manifestFile.Load(manifestFilePath); XmlNodeList permissions = manifestFile.GetElementsByTagName("uses-permission"); XmlNodeList features = manifestFile.GetElementsByTagName("uses-feature"); foreach (XmlNode permission in permissions) { XmlNode attribute = permission.Attributes ? ["android:name"]; if (attribute != null) { permissionsList.Add(attribute.Value); } } foreach (XmlNode feature in features) { XmlNode attribute = feature.Attributes ? ["android:name"]; if (attribute != null) { featuresList.Add(attribute.Value); } } EditorAnalytics.SendEventBuildTargetPermissions(new AndroidBuildPermissions() { features = featuresList.ToArray(), permissions = permissionsList.ToArray() }); } }