Fix iOS CDVWKInAppBrowser evaluateJavascript method randomly gets blocked on ios 12 (#341)
### Platforms affected iOS ### What does this PR do? fix issue[ #340](https://github.com/apache/cordova-plugin-inappbrowser/issues/340) iOS CDVWKInAppBrowser evaluateJavascript method randomly gets blocked on iOS 12 ### What testing has been done on this change? manual testing ### Checklist - [x] [Reported an issue](http://cordova.apache.org/contribute/issues.html) in the JIRA database - [x] Commit message follows the format: "CB-3232: (android) Fix bug with resolving file paths", where CB-xxxx is the JIRA ID & "android" is the platform affected. - [ ] Added automated test coverage as appropriate for this change.
This commit is contained in:
parent
3eadde65ab
commit
978b147598
@ -399,30 +399,17 @@ static CDVWKInAppBrowser* instance = nil;
|
|||||||
|
|
||||||
|
|
||||||
//Synchronus helper for javascript evaluation
|
//Synchronus helper for javascript evaluation
|
||||||
|
- (void)evaluateJavaScript:(NSString *)script {
|
||||||
- (NSString *)evaluateJavaScript:(NSString *)script {
|
|
||||||
__block NSString *resultString = nil;
|
|
||||||
__block BOOL finished = NO;
|
|
||||||
__block NSString* _script = script;
|
__block NSString* _script = script;
|
||||||
|
|
||||||
[self.inAppBrowserViewController.webView evaluateJavaScript:script completionHandler:^(id result, NSError *error) {
|
[self.inAppBrowserViewController.webView evaluateJavaScript:script completionHandler:^(id result, NSError *error) {
|
||||||
if (error == nil) {
|
if (error == nil) {
|
||||||
if (result != nil) {
|
if (result != nil) {
|
||||||
resultString = result;
|
NSLog(@"%@", result);
|
||||||
NSLog(@"%@", resultString);
|
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
NSLog(@"evaluateJavaScript error : %@ : %@", error.localizedDescription, _script);
|
NSLog(@"evaluateJavaScript error : %@ : %@", error.localizedDescription, _script);
|
||||||
}
|
}
|
||||||
finished = YES;
|
|
||||||
}];
|
}];
|
||||||
|
|
||||||
while (!finished)
|
|
||||||
{
|
|
||||||
[[NSRunLoop currentRunLoop] runMode:NSDefaultRunLoopMode beforeDate:[NSDate distantFuture]];
|
|
||||||
}
|
|
||||||
|
|
||||||
return resultString;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)injectScriptCode:(CDVInvokedUrlCommand*)command
|
- (void)injectScriptCode:(CDVInvokedUrlCommand*)command
|
||||||
|
Loading…
Reference in New Issue
Block a user