У меня есть метод, который пытается запустить браузер с определенным URL-адресом или, если на устройстве не установлен браузер, вместо этого запускается Activity
с WebView
и загружается тот же URL-адрес. В основном это:
try {
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
getActivity().startActivity(intent);
} catch (ActivityNotFoundException e) {
Intent intent = new Intent(getActivity(), MyWebView.class);
intent.putExtra(EXTRA_URL, url);
getActivity().startActivity(intent);
}
}
Как я могу проверить обе ветви? Можно ли временно отменить регистрацию активности браузера с устройства?
Я рассмотрел Shadow
Activity
, который просто выбрасывает ActivityNotFoundException
, когда ему был передан этот конкретный Intent
(я бы проверил URI данных), но AFAIK нет способа повернуть это Shadow
включен для одного теста и выключен для другого.
TYIA