자바 스크립트 호출 네이티브 API의 아이폰 OS 웹보기 사용

1. 먼저, 관련 코드가 자바 스크립트에 추가

. $ ( '. 콘텐츠 .saveCode')에 ( 'touchstart' 함수 () { // touchstart 
        경우 (TEMP == 0 ) { 
            도약 () 
        } 
        의 경우 (TEMP == 1 ) {android.savePic (화상. SRC);} 
        
    }); 

    기능 점프 () { // IOS의 
        var에 touchstart = 진정한 ; 
        에서는 window.location = "/ touchstart";     // 改变URL注意:要使用"/"分隔符
    } 

    기능 postStr () { // IOS의 
        반환 image.src; 
    }

 

2. 아이폰 OS는 지역 코드에 사진을 저장

// 当加载完网页取到이미지 URL
- ( 무효 ) webViewDidFinishLoad (UIWebView에서 * ) 웹뷰 { _urlString = _myWebView stringByEvaluatingJavaScriptFromString : @ " postStr (); " ]; NSLog ( @ " %의 @ " , _urlString ); } //调用次序- shouldStart-> FinishLoad->回调블록函数
- (BOOL) 웹뷰 (UIWebView에서 *) 웹뷰 shouldStartLoadWithRequest (NSURLRequest * ) 요청 navigationType (UIWebViewNavigationType) navigationType { 경우 ([request.mainDocumentURL.relativePath isEqualToString : @ " / touchstart " ]) { UIImageFromURL ([NSURL URLWithString : _urlString] ^ (*있는 UIImage 이미지) { UIImageWriteToSavedPhotosAlbum (화상, 자기, @selector (onSaveComplete : didFinishSavingWithError :에서는 ContextInfo :) 닐) } ^ ( 공극 ) { NSLog ( "@ ! 오류 " ) }); 돌아 거짓 ; } 반환 사실 ; } 공극 UIImageFromURL (NSURL * URL, 공극 (^ imageBlock) (이미지를 UIImage *), 보이드 (^ errorBlock) (보이드 )) { dispatch_async (dispatch_get_global_queue (DISPATCH_QUEUE_PRIORITY_DEFAULT, 0 ) ^ ( 공극 ) { 을 NSData * 데이터 = [있는 NSData의 ALLOC] initWithContentsOfURL : URL] 를 UIImage * 이미지 = [있는 UIImage ALLOC] initWithData : 데이터] dispatch_async (dispatch_get_main_queue ( ) ^ ( 공극 ) { 경우 (화상! = 닐) { imageBlock (화상) } 다른{ errorBlock (); } }); }); }

 

HTTPS : //www.cnblogs.com/davidgu/p/3951676.html 재현

추천

출처blog.csdn.net/weixin_34233856/article/details/93802955