Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- ios
- 웹뷰
- cors
- AWS
- 카카오톡
- 네이티브
- 알려줌
- swift
- TypeScript
- https
- 안드로이드
- Android
- php
- beanstalk
- angular
- nextjs
- 페이스북
- Elastic Beanstalk
- 도메인
- NeXT
- angular4
- node.js
- node
- fanzeel
- hybrid
- 감사일기
- JavaScript
- S3
- Route53
- react
Archives
- Today
- Total
쪼렙 as! 풀스택
iOS 하이브리드앱, Javascript 로 웹뷰에 메세지 보내기 (네이티브 코드 사용할 수 있도록) 본문
개발 일지/iOS & Android
iOS 하이브리드앱, Javascript 로 웹뷰에 메세지 보내기 (네이티브 코드 사용할 수 있도록)
코코앱 2019. 12. 28. 18:51
WKWebView 가 있는 ViewController
class ViewController: UIViewController, WKUIDelegate, WKNavigationDelegate, WKScriptMessageHandler {
@IBOutlet weak var webView: WKWebView!
private let HOME_URL = "https://MYWEB.URL"
override func viewDidLoad() {
super.viewDidLoad()
webView.uiDelegate = self
webView.navigationDelegate = self
// webView.configuration.websiteDataStore = WKWebsiteDataStore.default()
// webView.configuration.userContentController.add(self, name: "CUSTOM_FUNCTION_NAME")
self.webView.load(URLRequest(url: url!))
}
func userContentController(_ userContentController: WKUserContentController, didReceive message: WKScriptMessage) {
print(message)
}
...
}
Javascript 코드에서 네이티브로 메세지 보내기.
if(!!window.webkit && !!window.webkit.messageHandlers) {
window.webkit.messageHandlers.CUSTOM_FUNCTION_NAME.postMessage("자바스크립트에서 보내는 메세지")
}
안드로이드에서는,
window 객체를 통해서, 안드로이드의 네이티브 class 메소드를 직접 호출 할 수 있다.
방법은 아래 링크에 정리해 두었다.
Android Webview 에서 javascript window 객체에 접근해, 네이티브 기능 실행하기
'개발 일지 > iOS & Android' 카테고리의 다른 글
iOS - Storyboard 에서 UILabel 에 Padding 설정하기 (0) | 2020.03.19 |
---|---|
iOS - XIB 에서 가져온 TableViewCell의 Dynamic Height (self-sizing height) (0) | 2020.03.16 |
iOS13 - 카카오 로그인, 페이스북 로그인등 application: openURL() 이 안불러질때;; (0) | 2019.12.05 |
OkHTTP 는 더이상 안드로이드 4.4를 지원하지 않는다. (0) | 2019.07.22 |
Android - RecyclerView 에, 아이템 마진, First Item 에도 적용하기 (Horizontal Margin) (0) | 2019.07.02 |
Comments