I'm using this custom method to parse HTML using a WKWebView:
- (NSString *)stringByEvaluatingJavascript:(NSString *)javascript
{
NSString *string = @"";
[self.webView evaluateJavaScript:javascript
completionHandler:^(id result, NSError *error){
if (error) {
NSLog(@"Javascript:%@\nError: %@", javascript, error.description);
}
else {
NSString *parsedString = (NSString *)result;
NSLog(@"Parsed String: %@", parsedString);
__block string = parsedString;
}
}];
return string;
}
Which I'm using like this:
NSString *count = [self stringByEvaluatingJavascript:@"document.getElementsByTagName('a').length"];
NSLog(@"Count: %@", count);
It logs:
Count:
Parsed String: 242
While I'm getting this warning:
Incompatible pointer to integer conversion initializing 'int' with an expression of type 'NSString *__strong'
How to successfully assign the content of parsedString ("242") to string from within the block?