我正在尝试从android
调用iOS Swift
和javascript
(WKWebview)中的函数。
(对于Android):
public class WebAppInterface {
WebAppInterface(Context c) {
mContext = c;
}
@JavascriptInterface
public void postMessage(String message) {
Log.v(TAG, "message ----"+message);
Toast.makeText(mContext, message, Toast.LENGTH_SHORT).show();
}
}
webView.addJavascriptInterface(new WebAppInterface(mContext), "appInterface");
Android的JavaScript调用:
window.appInterface.postMessage("Hello);
iOS的Java脚本调用:
window.webkit.messageHandlers.appInterafce.postMeesage("Hello");
因此,在这里我们从
javascript
发出不同的android
和iOS
调用。是否可以通过一种方法同时在
android
和iOS
中调用函数?谢谢。
最佳答案
将它们都包装在一个函数中?
function postAppMessage(msg) {
if (window.webkit != undefined) {
if (window.webkit.messageHandlers.appInterface != undefined) {
window.webkit.messageHandlers.appInterface.postMessage(msg)
}
}
if (window.appInterface != undefined) {
window.appInterface.postMessage(msg)
}
}