Запуск браузера из текстового поля через Intent - Требуется ли http: //? - PullRequest
2 голосов
/ 22 мая 2010

У меня есть следующий код:

    /** Open a browser on the URL specified in the text box */
private void openBrowser() {
    Uri uri = Uri.parse(urlText.getText().toString());
    Intent intent = new Intent(Intent.ACTION_VIEW, uri);
    startActivity(intent);
}

Когда я вводю "http://www.google.com" в текстовое поле, оно работает нормально. Однако, когда я пытаюсь что-то вроде" www.google.com ", оно вылетает с:

Не найдена активность для обработки намерения { действовать = android.intent.action.VIEW dat = www.google.com}

Я неправильно использую Ури? Есть ли способ извлечь из него полный адрес? Или я должен написать код, который добавляет http вручную? например, если не начинается с http://,, добавьте http: //.

Спасибо!

1 Ответ

1 голос
/ 22 мая 2010

Я неправильно использую Uri?

Нет. Однако www.google.com не является допустимым универсальным идентификатором ресурса .

Или я должен написать код, который добавляет http вручную?

Да.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...