我将一个 Angular 应用程序部署到 apache 服务器。Android应用程序只创建一个webview并添加JavascriptSupport,如下所示
webView=this.findViewById(R.id.webview);
webView.addJavascriptInterface(new JavascriptSupport(this), "jsinterface");
Run Code Online (Sandbox Code Playgroud)
Android应用程序有一个toast方法,如下所示:
@JavascriptInterface
public void toast(String message) {
Toast.makeText(context, message, Toast.LENGTH_SHORT).show();
}
Run Code Online (Sandbox Code Playgroud)
我尝试从 Angular 8 应用程序调用 toast 方法,但没有成功。像这样的角度代码
export interface JavascriptInterface {
toast(message: string): void;
}
Run Code Online (Sandbox Code Playgroud)
在另一个类中我调用这个接口方法
public jsinterface: JavascriptInterface;
showtoast() {
this.jsinterface.toast("Hello");
}
Run Code Online (Sandbox Code Playgroud)
但我在模拟器控制台中遇到这样的错误
I/chromium: [INFO:CONSOLE(1)] "ERROR", source: http://<angular app url>/main-es2015.3bb15247496d83d1869d.js (1)
Run Code Online (Sandbox Code Playgroud)
如何正确调用android方法。
谢谢,
| 归档时间: |
|
| 查看次数: |
683 次 |
| 最近记录: |