Открытие локального файла HTML с помощью браузера Android - PullRequest
11 голосов
/ 03 сентября 2011

Я пытаюсь открыть локальный HTML-файл, используя браузер по умолчанию, используя следующий код:

Uri uri = Uri.fromFile(file);
Intent browserIntent = new Intent(Intent.ACTION_VIEW).setData(uri);
startActivity(browserIntent);

но я получаю следующее исключение:

android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.VIEW dat=file:///sdcard/SolveDroid/solution.html }

Я в замешательстве. Должен ли я создать мероприятие для управления веб-браузером? разве это не должно вызывать его деятельность?

пожалуйста, сообщите:)

UPDATE: тот же код работает, если я передаю URL следующим образом: Uri uri = Uri.parse("http://www.metalist.co.il");

Ответы [ 3 ]

9 голосов
/ 10 мая 2012
    Uri uri = Uri.fromFile(file);
    Intent browserIntent = new Intent(Intent.ACTION_VIEW);
    browserIntent.setClassName("com.android.browser", "com.android.browser.BrowserActivity");
    browserIntent.setData(uri);
    startActivity(browserIntent);
8 голосов
/ 05 сентября 2011

Я нашел ответ на эту проблему ... просто нужно добавить

browserIntent.setClassName("com.android.browser", "com.android.browser.BrowserActivity");

Я использовал его с «file: //», используя Uri.fromfile(file), и он работает (Android v.2.2.1)

2 голосов
/ 22 декабря 2012

попробуйте

Intent in = new Intent(Intent.ACTION_VIEW);
            File f=new File("/sdcard/html.html");
            in.setDataAndType(Uri.fromFile(f), "text/html");
            startActivity(in);
...