Мы используем Humanapi «Обмен данными о здоровье», и я успешно мигрировал из UIWebView в WKWebView, чтобы адаптироваться к амортизации UIWebView!
После того, как пользователь выбирает цель и завершает авторизацию, которую я получаю: "https://close-popup-with-message "и продолжаем с необходимыми логами c:
if ([url hasPrefix:@"https://close-popup-with-message"]) {
[self closePopup];
[self postMessageFromUrl:url];
}
Затем мы вызываем postMessageFromUrl и оцениваем JavaScript:
- (void)postMessageFromUrl:(NSString *)url {
NSArray *parts = [url componentsSeparatedByString:@"?"];
if ([parts count] > 1) {
NSString *message = parts[1];
NSString *js = [NSString stringWithFormat:@""
"window.postMessage(decodeURIComponent('%@'), '*');", message];
[self.webView evaluateJavaScript: js completionHandler: NULL];
} else {
DLog(@"error with message parsing!");
}
}
и нам следует продолжить: "https://connect-token", обработать токены и продолжить с необходимыми логами c!
Но по какой-то причине мы не кажется, что js "java script" не оценивается, Я не уверен, что это может быть неправильно js "java script" при оценке или обработке :( не уверен, какие-либо идеи ^ _ ^
Примечание в инициализации веб-представления, которое я добавил в необходимые логики javaScriptEnabling c:
// WKWebView init
WKWebViewConfiguration *configuration = [[WKWebViewConfiguration alloc] init];
WKPreferences *preferences = [[WKPreferences alloc] init];
preferences.javaScriptEnabled = YES;
preferences.javaScriptCanOpenWindowsAutomatically = YES;
configuration.preferences = preferences;
self.webView = [[WKWebView alloc] initWithFrame: frame configuration: configuration];
Спасибо в аванс ^ _ ^