r *alertController = [UIAlertController alertControllerWithTitle:nil message:message preferredStyle:UIAlertControllerStyleAlert];
[alertController addAction:[UIAlertAction actionWithTitle:@”OK” style:UIAlertActionStyleDefault handler:nil]];
[self presentViewController:alertController animated:YES completion:nil];
};
“`
(2)JavaScript調(diào)用原生代碼
在JavaScript中,調(diào)用原生代碼的方式類似于調(diào)用普通函數(shù)。例如,在Android中,可以通過(guò)以下代碼調(diào)用原生代碼:
“`
window.NativeInterface.showToast(“Hello World!”);
“`
在iOS中,可以通過(guò)以下代碼調(diào)用原生代碼:
“`
window.webkit.messageHandlers.showToast.postMessage(“Hello World!”);
“`
2. 原生代碼調(diào)用JavaScript
原生代碼調(diào)用JavaScript是指原生代碼通過(guò)JavaScript Bridge調(diào)用JavaScript,實(shí)現(xiàn)與H5頁(yè)面的交互。下面是原生代碼調(diào)用JavaScript的實(shí)現(xiàn)方式:
(1)定義JavaScript的接口
在JavaScript中,定義一個(gè)接口,用于接收原生代碼的調(diào)用。例如:
“`
function showToast(message) {
alert(message);
}
“`
(2)原生代碼調(diào)用JavaScript
在原生代碼中,調(diào)用JavaScript的方式類似于調(diào)用JavaScript函數(shù)。例如,在Android中,可以通過(guò)以下代碼調(diào)用JavaScript:
“`
webView.loadUrl(“javascript:showToast(‘Hello World!’)”);
“`
在iOS中,可以通過(guò)以下代碼調(diào)用JavaScript:
“`
[webView evaluateJavaScript:@”showToast(‘Hello World!’)” completionHandler:nil];
“`
三、總結(jié)
H5頁(yè)面與原生app交互可以通過(guò)JavaScript Bridge實(shí)現(xiàn)。JavaScript Bridge是連接JavaScript和原生代碼的橋梁,它使得JavaScript可以調(diào)用原生代碼,實(shí)現(xiàn)了H5頁(yè)面與原生app的交互。實(shí)現(xiàn)方式有兩種:JavaScript調(diào)用原生代碼和原生代碼調(diào)用JavaScript。通過(guò)H5頁(yè)面與原生app交互,可以實(shí)現(xiàn)更加豐富的用戶體驗(yàn)和更高的交互性。