Post not yet marked as solved
My purpose is that after I connect to the VPN, my application request traffic does not go through the VPN service channel, and other apps or browsers request the VPN service
My Settings are as follows
1: Configure config when creating NETunnelProviderManager
NETunnelProviderProtocol *protocol = [[NETunnelProviderProtocol alloc] init];
NEProxySettings *proxySetting = [[NEProxySettings alloc] init];
proxySetting.excludeSimpleHostnames = YES;
proxySetting.autoProxyConfigurationEnabled = NO;
proxySetting.proxyAutoConfigurationURL = nil;
proxySetting.autoProxyConfigurationEnabled = NO;
proxySetting.HTTPSEnabled = YES;
proxySetting.HTTPEnabled = YES;
proxySetting.exceptionList = @[@"com.object_1", @"com.object_1.PacketTunnel"];
protocol.proxySettings = proxySetting;
protocol.proxySettings = proxySetting;
[NETunnelProviderManager new].protocolConfiguration = protocol
code-block
2: Go to the network Settings in the extended callback
- (void)openVPNAdapter:(OpenVPNAdapter *)openVPNAdapter configureTunnelWithNetworkSettings:(NEPacketTunnelNetworkSettings *)networkSettings completionHandler:(void (^)(id< OpenVPNAdapterPacketFlow> _Nullable))completionHandler {
__weak __typeof(self) weak_self = self; // Try to filter networkExtension
NEProxySettings *proxySetting = [[NEProxySettings alloc] init];
proxySetting.autoProxyConfigurationEnabled = NO;
proxySetting.HTTPEnabled = YES;
proxySetting.HTTPSEnabled = YES;
proxySetting.excludeSimpleHostnames = YES;
proxySetting.exceptionList = @[@"com.object_1", @"com.object_1.PacketTunnel"];
networkSettings.proxySettings = proxySetting;
[self setTunnelNetworkSettings:networkSettings completionHandler:^(NSError * _Nullable error) {
if(! error){
completionHandler(weak_self.packetFlow);
}}];
}
code-block
Neither of these Settings is working as intended
Verification method: Check whether the IP addresses before and after the VPN connection are the same. If the IP addresses are the same, the VPN service traffic is filtered out
Post not yet marked as solved
I'm attempting to implement a button with a menu that allows multiple selection but I am not understanding how to utilize the .singleSelection option. Is there an example of this somewhere? I have this option unchecked in InterfaceBuilder but my menu doesn't allow multiple selections?
Post not yet marked as solved
Is anyone facing any issue with rotation on iOS 16? It seems to introduce some unexpected behaviour.
For example, if we're on a Master screen that supports all orientations and device is in Landscape mode, presenting/pushing another Details screen that only supports Portrait automatically brings the app to Portrait with no animations. While on iOS 15 or earlier, the app remains at Landscape and only rotates to Portrait when physical device's orientation changes.
Then if we dismiss/pop back to Master screen, the app again unexpectedly rotates from Portrait to Landscape with no animations.
Looks like a regression bug on iOS 16 part of some recent deprecations related to shouldAutorotate or UIDevice.setValue:forKey: as well as the introduction of setNeedsUpdateOfSupportedInterfaceOrientations.
Post not yet marked as solved
I got approval for User Assigned Device Name but now am stuck how to import this capability in XCode? I successfully updated my AppId in membership portal to reflect this permission, but I can't find anything in XCode to import this. I opened Editor -> Add Capability but there is no option to add User Assigned Device Name in the list!
User Assigned Device Name
Post not yet marked as solved
First.
I call the "requestGeometryUpdateWithPreferences with UIInterfaceOrientationMaskPortrait" at Portrait , its not going to work.
// the phone is Portrait
pIOS.interfaceOrientations = UIInterfaceOrientationMaskPortrait;
[scene requestGeometryUpdateWithPreferences:pIOS errorHandler:^(NSError * _Nonnull error) {}];
// "viewWillTransitionToSize:withTransitionCoordinator:" will not call
Then Next.
I call the "requestGeometryUpdateWithPreferences with UIInterfaceOrientationMaskLandscapeRight" at Portrait. Now it will call "viewWillTransitionToSize:withTransitionCoordinator:" twice.
// the phone is Portrait
pIOS.interfaceOrientations = UIInterfaceOrientationMaskLandscapeRight;
[scene requestGeometryUpdateWithPreferences:pIOS errorHandler:^(NSError * _Nonnull error) {}];
// "viewWillTransitionToSize:withTransitionCoordinator:" will call twice
The Phone manifested as goto LanscapeRight and immediately back to Portrait
Is this a BUG?
Post not yet marked as solved
iOS 16 has serious bugs in UIKit without any known workarounds, so much that I had to remove my app from sale. Obviously I am affected and am desperate to know if anyone has found any workaround or if UIKit Engineers can tell me any workarounds.
To summarise, the issue is calling setNeedsUpdateOfSupportedInterfaceOrientations shortly (within 0.5 seconds) after app launch doesn't trigger autorotation. It does trigger autorotation when the device is launched from the debugger but not when the app is launched directly. Maybe the debugger incurs some delay that is perhaps sufficient to trigger autorotation? I have filed FB11516363 but need a workaround desperately so as to get my app back on AppStore.