Какую комбинацию настроек тега META в HTML и WebSettings в Java я должен использовать, чтобы получить следующий результат: window.innerWidth в Javascript всегда (в любой версии Android и на любом устройстве) должен быть равен ширине WebView в пикселях.
Например, я установил ширину WebView на 1024 пикселя. В эмуляторе Android AVD значение window.innerWidth равно 683 пикселям (2/3 от 1024 или масштаб 150 %).
Я попробовал следующую META:
<meta name="viewport" content="width=device-width;
user-scalable=no; initial-scale=1.0;
minimum-scale=1.0; maximum-scale=1.0;" />
-- не работает.
Затем я попробовал:
_WebView.getSettings().setLoadWithOverviewMode(true);
_WebView.getSettings().setUseWideViewPort(true);
_WebView.setInitialScale(100);
-- тоже не работает.
Окончательно,
_WebView.getSettings().setDefaultZoom(ZoomDensity.FAR);
кажется, работает. Согласно документации, это означает «100% похоже на 240 dpi». Я не знаю, какое dpi у пользовательского устройства! Как правильно выполнить задание?
ОБНОВЛЕНИЕ
Я только что протестировал ZoomDensity.FAR на планшете с высоким разрешением — он работает без него и не работает с ним!
С уважением,