Posts

Post not yet marked as solved
3 Replies
535 Views
I added Privacy manifest for my app and submit it to review and apple reject my app with what comment ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/SmartlookAnalytics.framework/SmartlookAnalytics” file contains “Disk Space” as the value for a NSPrivacyAccessedAPIType key, which is invalid. Values for NSPrivacyAccessedAPIType keys in any privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api. i look at the package manifest and all looks fine (attached image). Maybe somebody saw that issue - and may tell me how can i fix it.
Posted Last updated
.
Post marked as solved
5 Replies
2.2k Views
I have vpn info, which I try to configure in my application. when I call startVPNTunnel my vpn connection status changed to: connecting, disconnecting - so I can't establish my vpn connection. But when i configure my vpn info in settings-general manual configure vpn - it is work fine I configured my NEVPNProtocol   static func protocolConfiguration(_ account: VPNAccountInfo) - NEVPNProtocol {     let configuration = NEVPNProtocolIKEv2()     configuration.authenticationMethod = .none     keychain["vpn_server"] = account.server     keychain["vpn_remote_id"] = account.remoteIdentifier     keychain["vpn_username"] = account.username     keychain["vpn_password"] = account.password     configuration.serverAddress = keychain["vpn_server"]     configuration.remoteIdentifier = keychain["vpn_remote_id"]     configuration.username = keychain["vpn_username"]     configuration.passwordReference = keychain[attributes: "vpn_password"]?.persistentRef     configuration.useExtendedAuthentication = true     configuration.disconnectOnSleep = false     return configuration   } and try to connected static func connectToVPNAccount(_ account: VPNAccountInfo) {     guard !connectionState.value.isInProgress else {       return     }     connectionState.value = .connecting     // Legacy?     // For no known reason the process of saving/loading the VPN configurations fails. On the 2nd time it works     vpnManager.loadFromPreferences(completionHandler: { (error: Error?) in       if (error != nil) {         disconnectInternal()         print("Could not load VPN Configurations")         return       }       vpnManager.protocolConfiguration = protocolConfiguration(account)       vpnManager.localizedDescription = "Onion VPN"       vpnManager.isEnabled = true       vpnManager.saveToPreferences(completionHandler: { (error:Error?) in         if (error != nil) {           disconnectInternal()           print("Could not save VPN Configurations")           return         }         do {           try vpnManager.connection.startVPNTunnel()           DispatchQueue.main.asyncAfter(deadline: .now() + 5, execute: {             connectionState.value = .connected           })         } catch let error {           disconnectInternal()           print("Error starting VPN Connection \(error.localizedDescription)")         }       })     })   } but it doesn't work
Posted Last updated
.