Я пытаюсь обернуть веб-приложение, скажем, www.xyz.com, в веб-просмотр с использованием shouldOverrideUrlLoading.У меня есть два действия, одно из которых запускает приложение, оно проверяет все запущенные действия и определяет, запускать ли новый экземпляр или нет, и другое действие, которое оборачивает мое приложение www.xyz.com в веб-просмотр.
Ясталкиваются с двумя проблемами:
Когда я нажимаю кнопку спящего режима, а затем снова нажимаю ее, чтобы открыть устройство, или когда приложение бездействует и переходит в спящий режим, и я нажимаю кнопку, чтобы открытьустройство, приложение перезагружается (перезапускается веб-просмотр).
Также, когда ссылка в веб-приложении, открывающая другой сайт, например, www.abc.com, не работает нормально, она работает дляв первый раз и открывает сайт во внешнем браузере по желанию, однако при дальнейшем нажатии пытается открыть сайт в веб-просмотре, что нежелательно.
Я нашел это в Google и нашел предложение вродекод ниже:
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
if (url.contains("abc")) {
Intent i = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
startActivity(i);
return true;
} else {
view.loadUrl(url);
return false;
}
}
Однако в моем случае впервые сайт www.abc.com открывается во внешнем браузере, ново второй раз, когда он открывается в веб-представлении, я отлаживал его в eclipse и обнаружил, что значение url совпадает с последующим кликом.