Итак, у меня есть веб-приложение React-Typescript, которое я размещаю в WebView в своем приложении для Android.
Я просто пытаюсь передать данные из клиента Android в Webview.Однако тот факт, что это приложение React, которое создается с помощью веб-пакета, кажется сложным.
Следуя инструкциям из этого стекового ответа: Передача данных из класса java в Web View html
Я попытался добавить функцию в Index.tsx и вызвать ееиз andoird вот так:
webview.getSettings().setJavaScriptEnabled(true);
webview.loadUrl("file:///android_asset/test.html");
webview.setWebViewClient(new WebViewClient(){
public void onPageFinished(WebView view, String url){
webview.loadUrl("javascript:init('" + theArgumentYouWantToPass + "')");
}
});
Однако не удалось найти функцию.Моей следующей мыслью было просто добавить его в Index.Html, однако тогда мне нужно было бы каким-то образом сохранить данные, чтобы я мог ссылаться на них из своего кода React.
Я пытался использовать локальное хранилище следующим образом:
<script type="text/javascript">
function init(val)
{
window.localStorage.setItem("key", val);
}
</script>
Я пробовал это с и без префикса окна, но оба раза он выдает ошибку, говорящую, что я пытаюсь вызвать setItem по нулевой ссылке.
Кто-нибудь знаеткак я могу отправить данные с Android в свое приложение React?