У меня есть мост JS в Android,
public class WebInterface {
Context mContext;
public WebInterface(Context c) { this.mContext = c;}
@JavascriptInterface
public void showAlert() {
Toast.makeText(mContext, "This is being called from the interface", Toast.LENGTH_SHORT).show();
}
}
Я могу установить интерфейс в моем webView
,
mWebView.addJavascriptInterface(WebInterface(this), "android");
Это прекрасно работает для простых методов, таких как showAlert()
, гдеПараметр не является параметром, когда параметр или параметр являются простой строкой, но когда мне нужно передать модель данных в качестве параметров при вызове собственных функций из веб-приложения, как я могу связать модели данных?Мне необходимо вызвать реализацию функции с параметром типа пользовательской модели данных.
public class WebInterface {
Context mContext;
public WebInterface(Context c) { this.mContext = c;}
@JavascriptInterface
public void showAlert() {
Toast.makeText(mContext, "This is being called from the interface", Toast.LENGTH_SHORT).show();
public void saveData(data: DataModel) { // DataModel is custom model
Toast.makeText(mContext, "Saving data model", Toast.LENGTH_SHORT).show();
}
}
Как связать модель данных с собственным и веб-приложением.Возможно ли использовать TypeScript?Если да, то как настроить?Возможно ли использование только простой строки json в качестве параметров?нет другого пути?