apple 5 years ago
parent
commit
42bba7464a

+ 8 - 8
ios/JianYuIOS/JianYuIOS.xcodeproj/project.pbxproj

@@ -50,7 +50,6 @@
 		183DDBB724961EA400F58FB5 /* weui.min.js in Resources */ = {isa = PBXBuildFile; fileRef = 183DDB9024961EA400F58FB5 /* weui.min.js */; };
 		183DDBB824961EA400F58FB5 /* axios.min.js in Resources */ = {isa = PBXBuildFile; fileRef = 183DDB9124961EA400F58FB5 /* axios.min.js */; };
 		1849F8FA248B6E94008F9023 /* JavaScriptCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1849F8F9248B6E94008F9023 /* JavaScriptCore.framework */; };
-		1859ECB524923B290046A36F /* JYNewWebController.m in Sources */ = {isa = PBXBuildFile; fileRef = 1859ECB424923B290046A36F /* JYNewWebController.m */; };
 		185F510A23A76765009F9022 /* CoreLocation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 185F510923A76765009F9022 /* CoreLocation.framework */; };
 		187B4EE321EC356100A9368D /* UIView+Extension.m in Sources */ = {isa = PBXBuildFile; fileRef = 187B4EE221EC356100A9368D /* UIView+Extension.m */; };
 		187B4EE621EC635700A9368D /* GlobalData.m in Sources */ = {isa = PBXBuildFile; fileRef = 187B4EE521EC635700A9368D /* GlobalData.m */; };
@@ -64,6 +63,7 @@
 		188BB11D2489D14800494F58 /* JYNewMineViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 188BB11C2489D14800494F58 /* JYNewMineViewController.m */; };
 		18AEC20B249332C500391584 /* JYKeyCustom.m in Sources */ = {isa = PBXBuildFile; fileRef = 18AEC20A249332C500391584 /* JYKeyCustom.m */; };
 		18AEC262249362E900391584 /* JYOldCustom.m in Sources */ = {isa = PBXBuildFile; fileRef = 18AEC261249362E900391584 /* JYOldCustom.m */; };
+		18BCAEB124F3C2980027921D /* JYWKNewWebController.m in Sources */ = {isa = PBXBuildFile; fileRef = 18BCAEB024F3C2980027921D /* JYWKNewWebController.m */; };
 		18C78C1A24E240CE001208F2 /* ZKClipboardView.m in Sources */ = {isa = PBXBuildFile; fileRef = 18C78C0C24E240CE001208F2 /* ZKClipboardView.m */; };
 		18C78C1B24E240CE001208F2 /* ZKModal.m in Sources */ = {isa = PBXBuildFile; fileRef = 18C78C0F24E240CE001208F2 /* ZKModal.m */; };
 		18C78C4324E24407001208F2 /* NJKWebViewProgress.m in Sources */ = {isa = PBXBuildFile; fileRef = 18C78C3B24E24407001208F2 /* NJKWebViewProgress.m */; };
@@ -178,8 +178,6 @@
 		183DDB9024961EA400F58FB5 /* weui.min.js */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.javascript; path = weui.min.js; sourceTree = "<group>"; };
 		183DDB9124961EA400F58FB5 /* axios.min.js */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.javascript; path = axios.min.js; sourceTree = "<group>"; };
 		1849F8F9248B6E94008F9023 /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; };
-		1859ECB324923B290046A36F /* JYNewWebController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = JYNewWebController.h; sourceTree = "<group>"; };
-		1859ECB424923B290046A36F /* JYNewWebController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = JYNewWebController.m; sourceTree = "<group>"; };
 		185F510923A76765009F9022 /* CoreLocation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreLocation.framework; path = System/Library/Frameworks/CoreLocation.framework; sourceTree = SDKROOT; };
 		187B4EE121EC356100A9368D /* UIView+Extension.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "UIView+Extension.h"; sourceTree = "<group>"; };
 		187B4EE221EC356100A9368D /* UIView+Extension.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "UIView+Extension.m"; sourceTree = "<group>"; };
@@ -204,6 +202,8 @@
 		18AEC260249362E900391584 /* JYOldCustom.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = JYOldCustom.h; sourceTree = "<group>"; };
 		18AEC261249362E900391584 /* JYOldCustom.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = JYOldCustom.m; sourceTree = "<group>"; };
 		18B2DF4021ACDA5D00B5C93F /* WebKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WebKit.framework; path = System/Library/Frameworks/WebKit.framework; sourceTree = SDKROOT; };
+		18BCAEAF24F3C2980027921D /* JYWKNewWebController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = JYWKNewWebController.h; sourceTree = "<group>"; };
+		18BCAEB024F3C2980027921D /* JYWKNewWebController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = JYWKNewWebController.m; sourceTree = "<group>"; };
 		18C78C0C24E240CE001208F2 /* ZKClipboardView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ZKClipboardView.m; sourceTree = "<group>"; };
 		18C78C0D24E240CE001208F2 /* ZKModal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ZKModal.h; sourceTree = "<group>"; };
 		18C78C0E24E240CE001208F2 /* ZKClipboardView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ZKClipboardView.h; sourceTree = "<group>"; };
@@ -580,8 +580,8 @@
 				188036F92193EA09006F9D7B /* JYTabBarController.m */,
 				18C9D8E5219A5F9F001AC829 /* UITabBar+badge.h */,
 				18C9D8E6219A5F9F001AC829 /* UITabBar+badge.m */,
-				1859ECB324923B290046A36F /* JYNewWebController.h */,
-				1859ECB424923B290046A36F /* JYNewWebController.m */,
+				18BCAEAF24F3C2980027921D /* JYWKNewWebController.h */,
+				18BCAEB024F3C2980027921D /* JYWKNewWebController.m */,
 				C550BEF520180AF000F0BC2A /* AppDelegate.h */,
 				C550BEF620180AF000F0BC2A /* AppDelegate.m */,
 				C5BE6E402011D99100F28B36 /* Main.storyboard */,
@@ -856,7 +856,6 @@
 			isa = PBXSourcesBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				1859ECB524923B290046A36F /* JYNewWebController.m in Sources */,
 				18EF1114232F683C006D4579 /* UIDevice+Hardware.m in Sources */,
 				C519972D2020238D007946E8 /* LXMD5.m in Sources */,
 				18C9D8E7219A5F9F001AC829 /* UITabBar+badge.m in Sources */,
@@ -880,6 +879,7 @@
 				188BB1142489D11300494F58 /* JYNewSearchViewController.m in Sources */,
 				18C78C4424E24407001208F2 /* LXProgressView.m in Sources */,
 				C519972E2020238D007946E8 /* LXViewControllerManager.m in Sources */,
+				18BCAEB124F3C2980027921D /* JYWKNewWebController.m in Sources */,
 				18AEC20B249332C500391584 /* JYKeyCustom.m in Sources */,
 				18C78C1B24E240CE001208F2 /* ZKModal.m in Sources */,
 				C550BEF920180AF000F0BC2A /* AppDelegate.m in Sources */,
@@ -1054,7 +1054,7 @@
 				CODE_SIGN_ENTITLEMENTS = "JianYuIOS/剑鱼标讯Debug.entitlements";
 				CODE_SIGN_IDENTITY = "iPhone Developer";
 				CODE_SIGN_STYLE = Automatic;
-				CURRENT_PROJECT_VERSION = 55;
+				CURRENT_PROJECT_VERSION = 58;
 				DEVELOPMENT_TEAM = 4S438G3ZUL;
 				ENABLE_BITCODE = NO;
 				FRAMEWORK_SEARCH_PATHS = (
@@ -1139,7 +1139,7 @@
 				CODE_SIGN_ENTITLEMENTS = JianYuIOS/JianYuIOS.entitlements;
 				CODE_SIGN_IDENTITY = "Apple Development";
 				CODE_SIGN_STYLE = Automatic;
-				CURRENT_PROJECT_VERSION = 55;
+				CURRENT_PROJECT_VERSION = 58;
 				DEVELOPMENT_TEAM = 4S438G3ZUL;
 				ENABLE_BITCODE = NO;
 				FRAMEWORK_SEARCH_PATHS = (

BIN
ios/JianYuIOS/JianYuIOS.xcworkspace/xcuserdata/apple.xcuserdatad/UserInterfaceState.xcuserstate


+ 3 - 3
ios/JianYuIOS/JianYuIOS/BaseClass1/PrefixHeader.pch

@@ -154,12 +154,12 @@ _Pragma("clang diagnostic pop")\
 #import "Reachability.h"
 #import "NJKWebViewProgressView.h"
 #import "NJKWebViewProgress.h"
-#import "JYNewWebController.h"
+#import "JYWKNewWebController.h"
 #import "ZKClipboardView.h"
 #import "ZKFaceVerifyMsgView.h"
 
 
-//#define kHost @"http://web-jydev-ws.jianyu360.cn/" //王山
+#define kHost @"http://web-jydev-ws.jianyu360.cn/" //王山
 
 //#define kHost @"http://web-jydev-zyh.jianyu360.cn/" //张雨涵
 
@@ -173,7 +173,7 @@ _Pragma("clang diagnostic pop")\
 
 //#define kHost @"http://app2-jytest.jianyu360.cn/"  //测试http
 
-#define kHost @"http://app-i2.jianyu360.com/"   //新正式
+//#define kHost @"http://app-i2.jianyu360.com/"   //新正式
 
 
 //#define kHost @"http://app207-jytest.jianyu360.cn/"   //测试http

+ 1 - 1
ios/JianYuIOS/JianYuIOS/Classes(模块)/JYNewExpViewController.m

@@ -621,7 +621,7 @@ NSString *const new_AesKey_3 = @"mGlAgnIBB8bx2nch";
     if (url) {
         if ([AFNetworkReachabilityManager sharedManager].networkReachabilityStatus == AFNetworkReachabilityStatusNotReachable || [AFNetworkReachabilityManager sharedManager].networkReachabilityStatus == AFNetworkReachabilityStatusUnknown) {
         }
-        JYNewWebController *ctr = [[JYNewWebController alloc] init];
+        JYWKNewWebController *ctr = [[JYWKNewWebController alloc] init];
         ctr.url = url;
         if (!title || [title isEqualToString:@""] || [title isEqualToString:@"undefined"]) {
             ctr.titleShow = nil;

+ 1 - 2
ios/JianYuIOS/JianYuIOS/Classes(模块)/JYNewMineViewController.m

@@ -637,8 +637,7 @@ NSString *const new_AesKey_4 = @"mGlAgnIBB8bx2nch";
         if ([AFNetworkReachabilityManager sharedManager].networkReachabilityStatus == AFNetworkReachabilityStatusNotReachable || [AFNetworkReachabilityManager sharedManager].networkReachabilityStatus == AFNetworkReachabilityStatusUnknown) {
         }
 
-        JYNewWebController *ctr = [[JYNewWebController alloc] init];
-//        NewWebController *ctr = [[NewWebController alloc] init];
+        JYWKNewWebController *ctr = [[JYWKNewWebController alloc] init];
         ctr.url = url;
         if (!title || [title isEqualToString:@""]||[title isEqualToString:@"undefined"]) {
             ctr.titleShow = nil;

+ 2 - 2
ios/JianYuIOS/JianYuIOS/Classes(模块)/JYNewSearchViewController.m

@@ -433,7 +433,7 @@ NSString *const new_AesKey_1 = @"mGlAgnIBB8bx2nch";
                 // 不允许跳转
                 decisionHandler(WKNavigationActionPolicyCancel);
             }else {
-                JYNewWebController *ctr = [[JYNewWebController alloc] init];
+                JYWKNewWebController *ctr = [[JYWKNewWebController alloc] init];
                 ctr.url = nextUrl;
                 ctr.titleShow = @"公告信息";
                 kMainQueue(^{
@@ -868,7 +868,7 @@ NSString *const new_AesKey_1 = @"mGlAgnIBB8bx2nch";
     if (url) {
         if ([AFNetworkReachabilityManager sharedManager].networkReachabilityStatus == AFNetworkReachabilityStatusNotReachable || [AFNetworkReachabilityManager sharedManager].networkReachabilityStatus == AFNetworkReachabilityStatusUnknown) {
         }
-        JYNewWebController *ctr = [[JYNewWebController alloc] init];
+        JYWKNewWebController *ctr = [[JYWKNewWebController alloc] init];
         ctr.url = url;
         if (!title || [title isEqualToString:@""] || [title isEqualToString:@"undefined"]) {
             ctr.titleShow = nil;

+ 1 - 1
ios/JianYuIOS/JianYuIOS/Classes(模块)/JYNewSubViewController.m

@@ -632,7 +632,7 @@ NSString *const new_AesKey_2 = @"mGlAgnIBB8bx2nch";
     if (url) {
         if ([AFNetworkReachabilityManager sharedManager].networkReachabilityStatus == AFNetworkReachabilityStatusNotReachable || [AFNetworkReachabilityManager sharedManager].networkReachabilityStatus == AFNetworkReachabilityStatusUnknown) {
         }
-        JYNewWebController *ctr = [[JYNewWebController alloc] init];
+        JYWKNewWebController *ctr = [[JYWKNewWebController alloc] init];
         ctr.url = url;
         if (!title || [title isEqualToString:@""] || [title isEqualToString:@"undefined"]) {
             ctr.titleShow = nil;

+ 6 - 5
ios/JianYuIOS/JianYuIOS/JYNewWebController.h → ios/JianYuIOS/JianYuIOS/JYWKNewWebController.h

@@ -1,20 +1,21 @@
 //
-//  JYNewWebController.h
+//  JYWKNewWebController.h
 //  JianYuIOS
 //
-//  Created by apple on 2020/6/11.
+//  Created by apple on 2020/8/24.
 //  Copyright © 2020 lixianglan. All rights reserved.
 //
 
 #import <UIKit/UIKit.h>
 
-//NS_ASSUME_NONNULL_BEGIN
+NS_ASSUME_NONNULL_BEGIN
+
+@interface JYWKNewWebController : UIViewController
 
-@interface JYNewWebController : UIViewController
 
 @property(nonatomic, strong)NSString *url;
 @property(nonatomic, strong)NSString *titleShow;
 
 @end
 
-//NS_ASSUME_NONNULL_END
+NS_ASSUME_NONNULL_END

+ 72 - 75
ios/JianYuIOS/JianYuIOS/JYNewWebController.m → ios/JianYuIOS/JianYuIOS/JYWKNewWebController.m

@@ -1,23 +1,23 @@
 //
-//  JYNewWebController.m
+//  JYWKNewWebController.m
 //  JianYuIOS
 //
-//  Created by apple on 2020/6/11.
+//  Created by apple on 2020/8/24.
 //  Copyright © 2020 lixianglan. All rights reserved.
 //
 
-#import "JYNewWebController.h"
+#import "JYWKNewWebController.h"
 #import <WebKit/WebKit.h>
 
-@interface JYNewWebController ()<WKNavigationDelegate,UIWebViewDelegate>
+@interface JYWKNewWebController ()<WKNavigationDelegate>
+@property (nonatomic, strong) UIProgressView *progressView;
+@property (nonatomic, strong) WKWebView *webView;
 
 
-@property (nonatomic, strong) UIProgressView *progressView;
-//@property (nonatomic, strong) WKWebView *webView;
-@property (nonatomic, strong) UIWebView *webView;
 @end
 
-@implementation JYNewWebController
+@implementation JYWKNewWebController
+
 
 -(void)viewWillAppear:(BOOL)animated
 {
@@ -29,7 +29,7 @@
 {
     if (_progressView == nil) {
         CGFloat H = 0.0;
-        if (self.titleShow) {
+        if (self.titleShow ) {
             if ([self.titleShow isEqualToString:@"-1"]) {
                
             }else {
@@ -103,24 +103,26 @@
         backBtn_1.hidden = NO;
     }
     
-    self.webView = [[UIWebView alloc] initWithFrame:CGRectMake(0, H, WIDTH, HEIGHT-STATUS_BAR_HEIGHT-H)];
+    
+    WKWebViewConfiguration *config = [[WKWebViewConfiguration alloc] init];
+    config.preferences = [[WKPreferences alloc] init];
+    config.preferences.minimumFontSize = 0;
+    config.allowsInlineMediaPlayback = YES;
+    self.webView = [[WKWebView alloc] initWithFrame:CGRectMake(0, H, WIDTH, HEIGHT-STATUS_BAR_HEIGHT-H) configuration:config];
     if (iPhoneX) {
         if (@available(iOS 11.0, *)) {
-            self.webView.scrollView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever;
+            _webView.scrollView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever;
         }
     }
     self.webView.scrollView.bounces = NO;
-    _webView.scrollView.bounces = NO;
-
-    _webView.delegate = self;
-    _webView.userInteractionEnabled = YES;
-    [self.webView addObserver:self forKeyPath:@"estimatedProgress" options:NSKeyValueObservingOptionNew context:nil];
+    self.webView.navigationDelegate = self;
+    self.webView.userInteractionEnabled = YES;
     [self.view addSubview:self.webView];
+    [self.webView addObserver:self forKeyPath:@"estimatedProgress" options:NSKeyValueObservingOptionNew context:nil];
     [self.webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:self.url]]];
     [self.view addSubview:backBtn_1];
     [self.view addSubview:titleView];
 }
-
 - (void)viewDidLoad {
     [super viewDidLoad];
     // Do any additional setup after loading the view.
@@ -129,74 +131,70 @@
     NSLog(@"title:%@",self.titleShow);
     NSLog(@"url:%@",self.url);
     [self initUI];//渲染页面
-//    [self.view addSubview:self.progressView];
-    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(dismissSelf) name:@"kNewWebControllerDismiss" object:nil];
+    [self.view addSubview:self.progressView];
+    
+
 }
 
-#pragma mark - UIWebViewDelegate
-- (void)webViewDidStartLoad:(UIWebView *)webView {
-//    [[LXViewControllerManager shareViewControllerManager] showHudText:@""];
+
+
+#pragma mark - WKNavigationDelegate
+/* 页面加载完成 */
+- (void)webView:(WKWebView *)webView didFinishNavigation:(WKNavigation *)navigation{
+    
+//    NSLog(@"-----页面加载完成%@",webView.URL.absoluteString);
+    [self.webView evaluateJavaScript:@"document.documentElement.style.webkitTouchCallout='none';" completionHandler:nil];
 }
-- (void)webViewDidFinishLoad:(UIWebView *)webView{
-    [[LXViewControllerManager shareViewControllerManager] hideHud];
-    [webView stringByEvaluatingJavaScriptFromString:@"document.documentElement.style.webkitUserSelect='none';"];
-    // Disable callout
-    [webView stringByEvaluatingJavaScriptFromString:@"document.documentElement.style.webkitTouchCallout='none';"];
+
+// 页面开始加载时调用
+- (void)webView:(WKWebView *)webView didStartProvisionalNavigation:(WKNavigation *)navigation{
+
+}
+// 当内容开始返回时调用
+- (void)webView:(WKWebView *)webView didCommitNavigation:(WKNavigation *)navigation{
 }
 
--(void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error{
-//    [[LXViewControllerManager shareViewControllerManager] hideHud];
+// 页面加载失败时调用
+- (void)webView:(WKWebView *)webView didFailProvisionalNavigation:(WKNavigation *)navigation withError:(nonnull NSError *)error{
     [[GlobalData shareInstance] addOnePlistData:@{
-        @"detail":[[self.webView stringByEvaluatingJavaScriptFromString:@"document.location.href"] stringByAppendingString:[NSString stringWithFormat:@"\n%@",[error description]]],
+        @"detail":[[self stringByEvaluatingJavaScriptFromString:@"document.location.href"] stringByAppendingString:[NSString stringWithFormat:@"\n%@",[error description]]],
         @"reqTime":[NSNumber numberWithInt:0],
     }];
-    
 }
 
 
-#pragma mark - WKNavigationDelegate
-/* 页面加载完成 */
-//- (void)webView:(WKWebView *)webView didFinishNavigation:(WKNavigation *)navigation{
-//
-//    [self.webView evaluateJavaScript:@"document.documentElement.style.webkitTouchCallout='none';" completionHandler:nil];
-//    [self.webView evaluateJavaScript:@"document.documentElement.style.webkitUserSelect='none';"completionHandler:nil];
-//}
-//// 页面开始加载时调用
-//- (void)webView:(WKWebView *)webView didStartProvisionalNavigation:(WKNavigation *)navigation{
-//
-//}
-//// 当内容开始返回时调用
-//- (void)webView:(WKWebView *)webView didCommitNavigation:(WKNavigation *)navigation{
-//}
-//
-//// 页面加载失败时调用
-//- (void)webView:(WKWebView *)webView didFailProvisionalNavigation:(WKNavigation *)navigation withError:(nonnull NSError *)error{
-//    [[GlobalData shareInstance] addOnePlistData:@{
-//        @"detail":[[self stringByEvaluatingJavaScriptFromString:@"document.location.href"] stringByAppendingString:[NSString stringWithFormat:@"\n%@",[error description]]],
-//        @"reqTime":[NSNumber numberWithInt:0],
-//    }];
-//}
-//- (NSString *)stringByEvaluatingJavaScriptFromString:(NSString *)script
-//{
-//    __block NSString *resultString = nil;
-//    __block BOOL finished = NO;
-//
-//    [self.webView evaluateJavaScript:script completionHandler:^(id result, NSError *error) {
-//        if (error == nil) {
-//            if (result != nil) {
-//                resultString = [NSString stringWithFormat:@"%@", result];
-//            }
-//        } else {
-//            NSLog(@"evaluateJavaScript error : %@", error.localizedDescription);
-//        }
-//        finished = YES;
-//    }];
-//
-//    while (!finished) {
-//        [[NSRunLoop currentRunLoop] runMode:NSDefaultRunLoopMode beforeDate:[NSDate distantFuture]];
-//    }
-//    return resultString;
-//}
+-(void)webView:(WKWebView *)webView decidePolicyForNavigationAction:(WKNavigationAction *)navigationAction decisionHandler:(void (^)(WKNavigationActionPolicy))decisionHandler
+{
+    //如果是跳转一个新页面
+    if (navigationAction.targetFrame == nil) {
+        [webView loadRequest:navigationAction.request];
+    }
+ 
+    decisionHandler(WKNavigationActionPolicyAllow);
+}
+
+- (NSString *)stringByEvaluatingJavaScriptFromString:(NSString *)script
+{
+    __block NSString *resultString = nil;
+    __block BOOL finished = NO;
+
+    [self.webView evaluateJavaScript:script completionHandler:^(id result, NSError *error) {
+        if (error == nil) {
+            if (result != nil) {
+                resultString = [NSString stringWithFormat:@"%@", result];
+            }
+        } else {
+            NSLog(@"evaluateJavaScript error : %@", error.localizedDescription);
+        }
+        finished = YES;
+    }];
+
+    while (!finished) {
+        [[NSRunLoop currentRunLoop] runMode:NSDefaultRunLoopMode beforeDate:[NSDate distantFuture]];
+    }
+    return resultString;
+}
+
 
 
 
@@ -232,7 +230,6 @@
 
 
 
-
 /*
 #pragma mark - Navigation