Posts

Post not yet marked as solved
0 Replies
720 Views
Hi. We are using a native client for some federated services where we would like to use FIDO2. In IOS 14, WKWebView does not work for FIDO2, but FIDO 2 works with native Safari Browser.  Does WKWebView, SafariViewContoller or SSO extension ( in IOS 14 ) support FIDO 2 ?
Posted
by jkim2332.
Last updated
.
Post not yet marked as solved
0 Replies
741 Views
Hi. I have created 3 push certificates (Apple Push Notification service SSL (Sandbox & Production) ) with my AppID, and I noticed I can't create Apple Push Notification service SSL (Sandbox & Production) certificate with my AppID anymore. I do not see my AppID in the selection of AppID for Apple push notification service SSL (Sandbox & Production ) certificate. Is max number of push certificate for same AppID is 3 ?
Posted
by jkim2332.
Last updated
.
Post not yet marked as solved
2 Replies
850 Views
Hi. I have an Application including NEFilterDataProvider running for web filtering and NEFilterDataProvider is an extension.What I noticed that Applicaiton can't finish upgrading if NEFilterDataProvider extension is running. It just stays loading.I have tested upgrading via TestFilght, but still Application can't finish upgrading.However, if NEFilterDataProvider is killed or not running, Application can finish upgrading successfully.Do you have any idea why Application keeps loading and can't finish upgrading while running NEFilterDataProvider extension ?
Posted
by jkim2332.
Last updated
.
Post not yet marked as solved
1 Replies
495 Views
Hi Apple. We are trying to get referred host info from new window or new tab in NEFilterDataProvider in IOS. For example, if we open YouTube link (YouTube.com/abc) in a new tab or new window from the host site(abc.com), how can we get this referred host info from new tab or new windows ? We would like to implement to block to load YouTube or media link in same host web site, in new tab or in new windows (if users click the Youtube or media link in the host site ) We know how to get host info if we load YouTube in the same host site ( we check header field to get host info in same tab, but could not find the way to get referred host info from new tab or new windows ) Thank you.
Posted
by jkim2332.
Last updated
.
Post not yet marked as solved
9 Replies
2.0k Views
Hi Apple.My App is using FilterDataProvider and FilterControl Provider to filter web sites.My App webfilter working before upgrading IOS 13.5.The problem on IOS 13.5 is I do not get this callback in both extensions.override func handleNewFlow(_ flow: NEFilterFlow, completionHandler: @escaping (NEFilterControlVerdict) -> Void)handleNewFlow callback works fine on IOS 13.4, but not any more after upgrading IOS 13.5.I confirmed these procedures are still working on 13.5. no error.1. NEFilterManager is enabled2. NEFilterManager called loadpreference before savepreference.3. NEFilterManager successfully savedpreference.I checked all NEFilter document, but no new update or known issue reported in XCode 11.5 Document.Is this a IOS 13.5 bug ?
Posted
by jkim2332.
Last updated
.
Post not yet marked as solved
1 Replies
933 Views
Hi Apple. Can IOS allow or disallow apps to access VPN ? Android supports APIs to allow or disallow apps to access VPN.- VpnService.BuilderaddAllowedApplication(String packageName)Adds an application that's allowed to access the VPN. - VpnService.BuilderaddDisallowedApplication(String packageName)Adds an application that's denied access to the VPN connection. Does IOS support allow or disallow Apps to access VPN ? I found includedRoutes and excludedRoutes API, but they are for IPv4 and IPv6. Not app based. Like YouTube, Skype or Team Apps may use different servers for video, voice or other services.
Posted
by jkim2332.
Last updated
.
Post not yet marked as solved
4 Replies
1.7k Views
Hi. I am developing VPN app with NWTCPConnection.I have implemented switching network ( from WiFi to LTE or LTE to Wifi ) and upgrade connections or create new connections as Apple suggested.In Apple document for hasBetterPath property, "Evaluates to true if a new connection attempt to the remote endpoint would use a different and preferred path. If the current connection is not viable, this can be used as a hint to try again. If the current connection is still viable, this can indicate that the system or user has a preference for the newly available network path. For example, if the connection is established over a cellular data network and Wi-Fi is now available, then the connection has a better path available and this property is set to true. Use the initWithUpgradeForConnection:initializer to create a new connection with the same parameters as the current connection. Use Key-Value Observing to watch this property".As Apple documented, hasBetterPath has been observed when switching network or turn off/on network. However, hasBetterPath sometimes has been observed as soon as connecting new network ( new network should be LTE or WiFi ).For example, if I switch network from LTE to WiFi, I observe "hasBetterPath" which is expected. Then I do upgrade and create new connection. ( we also have tried to create new connection and new tunnel without upgrading. Both are resulting same )Normally, new connection successfully connect to VPN with new network and I do not observe "hasBetterPath" after connecting if there is no network changes.However, in some networks ( Vodafone LTE in Europe or WiFi ), I have observed "hasBetterPath" as soon as connecting to VPN with new network ( Normally it occurs within 1 sec after observing “state” and connection.state = .connected ).If I handle this weird "hasBetterPath" case and upgrade connection again, device's network goes down ( WiFi or LTE icon shows, but can not browse any website with Safari ). Once device’s network has been down, disconnect VPN ( terminate VPN process ) is the only way to come network back.Moreover, if I do not handle this weird "hasBetterPath" case and keep staying current connection, I get no observation anymore ( NSKeyValueChangeKey : state, isViable and hasBetterPath ) even though I have added those observations.Our workaround for this weird “hasBetterPath” case, App has to terminate VPN extension (Disconnect) and create new one. Then connect VPN with same settings. If “hasBetterPath” shows up again as soon as connecting to VPN ( Normally within 1 sec ), App keeps terminating extension and creating new connection until we do not get “hasBetterPath” with current network.This workaround seems to work if App is in foreground; however, we are not able to launch VPN extension when App is in background and terminate VPN extension.Please let me know if you need more information about unexpected “hasBetterPath” issue.Thank you.//// more update on Code level ///////This hasBetterPath issue doesn't even need to change network. We have observed this issue easily on iPhone6Plus ( IOS 11.3 and 11.4 )What I observed is that sometimes "hasBetterPath" has been observed as soon as connection gets connected even though no network change.Moreover, If I upgrade connection or create new connection with new tunnel after getting this hasBetterPath, device's network goes down ( WiFi or LTE icon shows, but can not browse any website with Safari ).Once device’s network has been down, disconnect VPN ( terminate VPN process ) is the only way to come network back.Moreover, if I do not handle this weird ( hasBetterPath right after connection gets connected state ) "hasBetterPath" case and keep current connection, I get no observation anymore ( NSKeyValueChangeKey : state, isViable and hasBetterPath ) even though I have added those observations.STEPS TO REPRODUCE1. Try to connect to VPN ( SSL VPN with TCPConnection )2. We Observed key value "state" of our NWTCPConnection instance and connection state changed to .connected.3. After processing PPP negotiation on the connection, then we call completionHandler from startTunnel(options: [String : NSObject]?, completionHandler: @escaping (Error?) -> Void).4. Then we observed "hasBetterPath" even though no network change. Normally we do not get this weird hasBetterPath after calling completionHandler from startTunnel(options: [String : NSObject]?, completionHandler: @escaping (Error?) -> Void)
Posted
by jkim2332.
Last updated
.