Post

Replies

Boosts

Views

Activity

Reply to WKWebView does not work on evaluateJavaScript() form submit
It seems WKWebview (which uses webkit) involves in a new technology called "App-Bound Domains" to protect user's privacy. Please refer to App-Bound Domains - https://webkit.org/blog/10882/app-bound-domains/ for more details. However, I tried the solutions provided in the above document by adding "WKAppBoundDomains" in Info.plist and setting "webViewConfiguration.limitsNavigationsToAppBoundDomains = YES/NO;". They don't work. For My Instance, I test getting cookies just after setting cookies in WKWebview.configuration.websiteDataStore.httpCookieStore. It works well on iOS 13/12/11 simulator, but fails on iOS 14 simulator. It return empty cookie array in the callback closure. var wkwebview = WKWebview() if let cookie = HTTPCookie(properties: [ 								HTTPCookiePropertyKey.domain: domain, 								HTTPCookiePropertyKey.path: "/", 								HTTPCookiePropertyKey.name: "Token", 								HTTPCookiePropertyKey.secure: "true", 								HTTPCookiePropertyKey.value: "\(token)", 								HTTPCookiePropertyKey.expires: Date() 						]) { 								wkwebview.configuration.websiteDataStore.httpCookieStore.setCookie(cookie) { 										request.setValue("\(cookie.name)=\(cookie.value);", forHTTPHeaderField: "Cookie") 										request.httpShouldHandleCookies = true 										wkwebview.load(request) 										 										NSLog("request=\(request.debugDescription)") 										wkwebview.configuration.websiteDataStore.httpCookieStore.getAllCookies { (cookies) in 												NSLog("----------- print out cookies begin -----------") 												for c in cookies { 														NSLog("\(c)") 												} 												NSLog("----------- print out cookies end -----------") 										} 								} 								return 						} I suppose that, Apple doesn't include this feature in XCode 12 beta version. Can anyone provide more hints?
Aug ’20
Reply to iOS Distribution Certificate Expires in 30 Days
I am confused. Is your package built with ad-hoc provisioning file or in-house one? However, no matter ad-hoc or in-house application, if the provisioning file expires, it cannot be installed onto your device. Also, the installed application with the in-house provisioning file can never start up (I am not sure about this of ad-hoc application, it doesn't seem to start up either).
Sep ’20
Reply to iOS Distribution Certificate Expires in 30 Days
How do Xcode managed profile and iOS Distribution certificate affect the Client's application? I don't exactly know how Xcode managed profile works because I uses offline cert files and provisiong profiles. But as my understanding, the cert and provisiong profile are automatically created and update by this feature if you have an Developer AppleID and password. iOS Distribution certificate determine the expiration of application and which devices the app (with the coresponding privisioning profile) can be installed on. The coresponding privisioning profile is binding to the specific one or more cert files. Each cert file is binding to only one Bundle Identifier(which you defined in your project). You can request cert file and donwload it to pair with the private key generated when you perform a cert request in Keychain app. FYI, I suggest you to renew the cert or the provisioning profile which will be expired soon. If the old cert or privisioning profile is expired, then the app with the old one cannot start up. This is which Ad Hoc provisioning designed for. It has many limitations. If you don't want these limitations, please upload your app to AppStore and release it. Hope my answer could be helpful.
Sep ’20