[英]How can I get entered text from Android WebView and use it in my code
[英]How can I run React JS functions in a webview from my Android code?
所以我有一個 React-Typescript webapp,我在我的 Android 應用程序的 WebView 中托管它。
我只是試圖將數據從 Android 客戶端傳遞到 Webview。 然而,這是一個使用 webpack 構建的 React 應用程序這一事實似乎使事情變得復雜。
遵循從此堆棧響應中找到的說明:將數據從 java 類傳遞到 Web 視圖 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 應用程序嗎?
您需要在設置中啟用localStorage
(類似於setJavaScriptEnabled
)例如
webview.getSettings().setDomStorageEnabled(true);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.