Android浏览器如何打开本地html文件

本文介绍了在Android中如何使用Intent和WebView打开本地HTML文件。第一种方法涉及创建Intent,设置ACTION_VIEW,指定数据URI,并启动BrowserActivity。如果遇到找不到活动的错误,可以尝试使用intent.setComponent()。第二种方法是通过在XML布局中添加WebView,然后在Activity中设置JavaScript支持并加载本地HTML文件。

有两种方法:

1、代码 如下:

Intent intent=new Intent();
intent.setAction("android .intent.action.VIEW");
Uri CONTENT_URI_BROWSERS = Uri.parse("content://com.android.htmlfileprovider/sdcard/123.html");
intent.setData(CONTENT_URI_BROWSERS);
intent.setClassName("com.android.browser", "com.android.browser.BrowserActivity");
startActivity(intent);

假设要打开的本地html文件 存放在如下路径 /sdcard/123.html

如果出现错误:

Unable to find explicit activity class {
com.google.android.browser/com.android.browser.BrowserActivity};
have you declared this activity in your AndroidManifest.xml?


intent.setComponent(new ComponentName("com.android.browser", "com.android.browser.BrowserActivity"));

代替

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

至于原因,由于时间原因没有研究,希望有知道的跟贴解释。

2、使用webview来实现:
首先在 layout文件夹下的xml中 加入WebView控件

< WebView     
android:id ="@+id/wv1"    
android:layout_width ="fill_parent"    
android:layout_height ="fill_parent"
/>

再在主文件中输入如下代码

public  class  TestDemo extends  Activity {  

    /** Called when the activity is first created. */   
  
    @Override   
    public  void  onCreate(Bundle savedInstanceState) {  
        super .onCreate(savedInstanceState);  
        setContentView(R.layout.main);  
  
        WebView wView = (WebView)findViewById(R.id.wv1);     
        WebSettings wSet = wView.getSettings();     
        wSet.setJavaScriptEnabled(true );     
                     
        //wView.loadUrl("file:///android_asset/index.html");     
        //wView.loadUrl("content://com.android.htmlfileprovider/sdcard/index.html");   
        wView.loadUrl("http://wap.baidu.com" );   
    }   
}

解释:

//wView.loadUrl("file:///android_asset/index.html ");  

----- 打开本包内asset目录下的index.html文件
 //wView.loadUrl("content://com.android.htmlfileprovider/sdcard/index.html");

----- 打开本地sd卡内的index.html文件
//wView.loadUrl("http://wap.baidu.com ");

----- 打开指定URL的html文件

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值