Create directory and html files
Switch to Project View (not Android view)
- Go to: [your_project]
- app/src/main/
- Right click on main
- → New
- → Directory
- → select or type "assets"
- right click "assets"
- → New
- → Directory
- → type "webhelp"
- right click "webhelp"
- → New
- → File
- → type "htmlhelp.html"
- Repeat step 11 for your language e.g. id for Indonesia e.g. "htmlhelp_id.html"
You can copy paste html code into htmlhelp.html" and "htmlhelp_id.html"
here is layout to show the webview
... <WebView
android:id="@+id/my_web_help"
android:layout_width="match_parent"
android:layout_height="match_parent"
/> ...
here is code to show the webview
...
@Override
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
...
WebView webView = view.findViewById(R.id.my_web_help);
// Safe defaults
webView.getSettings().setJavaScriptEnabled(false);
webView.getSettings().setAllowFileAccess(true);
webView.getSettings().setDomStorageEnabled(false);
loadHelpPage(webView);
...
}
/*
* file html helper
*/
private void loadHelpPage(WebView webView) {
String lang = Locale.getDefault().getLanguage();
String fileName;
if ("id".equals(lang)) {
fileName = "htmlhelp_id.html";
} else {
fileName = "htmlhelp.html";
}
webView.loadUrl("file:///android_asset/webhelp/" + fileName);
}
...
Optional configuration webview when your application got trouble when submit to application store e.g google play store
WebSettings settings = webView.getSettings();
settings.setJavaScriptEnabled(false);
settings.setDomStorageEnabled(false);
settings.setAllowFileAccess(true); // needed for assets
settings.setAllowContentAccess(false);
settings.setAllowFileAccessFromFileURLs(false);
settings.setAllowUniversalAccessFromFileURLs(false);
settings.setSupportZoom(false);
settings.setBuiltInZoomControls(false);