android-使用webview来开发混合应用
来源:互联网 发布:Windows切换目录 编辑:程序博客网 时间:2024/06/05 11:37
标签(空格分隔): android webview 混合应用
1.关于WebViewClient的使用方法
1. shouldOverrideUrlLoading(Webview view, String url)
public boolean shouldOverrideUrlLoading(WebView view, String url) { view.loadUrl(url); return true; }
在点击请求的时候就会调用才方法,当返回false的时候就会把打开url的任务交给系统,返回true的时候就会用当前的webview来打开该url。
2. onReceivedSslError(WebView view, SslErrorHandler handler, android.net.http.SslError error)
public void onReceivedSslError(WebView view, SslErrorHandler handler, android.net.http.SslError error) {handler.proceed();}
重写此方法webview可以处理https的请求。
3. shouldOverrideKeyEvent(WebView view, KeyEvent event)
public boolean shouldOverrideKeyEvent(WebView view, KeyEvent event) { return super.shouldOverrideKeyEvent(view, event); } }
重写此方法才能够处理在浏览器中的按键事件。
4. onLoadResource(WebView view, String url)
public void onLoadResource(WebView view, String url) { // TODO Auto-generated method stub if (DEBUG) { Log.d(TAG, " onLoadResource "); } super.onLoadResource(view, url); }
在加载页面资源时会调用,每一个资源(比如图片)的加载都会调用一次。
5. onPageStarted(WebView view, String url, Bitmap favicon)
public void onPageStarted(WebView view, String url, Bitmap favicon) { // TODO Auto-generated method stub if (DEBUG) { Log.d(TAG, " onPageStarted "); } if (url.endsWith(".apk")) { download(url);//下载处理 } super.onPageStarted(view, url, favicon); }
页面加载开始的时候就会调用此方法。
6. onPageFinished(WebView view, String url)
public void onPageFinished(WebView view, String url) { // TODO Auto-generated method stub if (DEBUG) { Log.d(TAG, " onPageFinished "); } super.onPageFinished(view, url); }
页面结束的时候就会调用此方法。
2.在webview里面使用webviewclient
我们想要实现在页面内来跳转各个页面,那么怎么来实现呢?
通过上面的webviewclient的方法我们不难发现这个方法shouleOverrideUrlLoading()方法来完成这个任务。
首先我们要重写这个方法
class webViewClient extends WebViewClient { public static shouldOverrideUrlLoading(WebView webview, String url) { webview.loadUrl(url); //必须修改返回值为true才行 return true; }}
然后在webview里面调用setWebViewClient()方法。
public class MainActivity extends Activity { private WebView webView = null; @SuppressLint("SetJavaScriptEnabled") @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); webView = (WebView) findViewById(R.id.myWebview); //设置该webview的权限 webView.getSettings().setAllowFileAccess(true); //设置webview的javaScript权限 webView.getSettings().setJavaScriptEnabled(true); //加载指定的url webView.loadUrl("file:///android_asset/index.html"); // 设置Web视图 webView.setWebViewClient(new webViewClient()); }
这样就ok了,可以实现连接的页面调转。
3.按回退键可以实现页面返回
在webview里面实现跳转后怎么实现回退键返回上一个页面呢?
当然,我们肯定要来监听onKeyDown()方法
@Override // 设置回退 // 覆盖Activity类的onKeyDown(int keyCoder,KeyEvent event)方法 public boolean onKeyDown(int keyCode, KeyEvent event) { if ((keyCode == KeyEvent.KEYCODE_BACK) && webView.canGoBack()) { webView.goBack(); // goBack()表示返回WebView的上一页面 return true; } finish();// 结束退出程序 return false; }
ok,这样就完成了。
1 0
- android-使用webview来开发混合应用
- Android开发: 使用WebView来进行混合开发
- Android混合开发之WebView使用总结
- Android混合开发之WebView使用总结
- Android混合开发之WebView使用总结
- Android混合开发之WebView使用总结
- Android WebView与混合应用
- Android Hybrid混合开发(Webview+JSBridge)简介
- Android --- WebView -- 混合开发(一)
- Android --- WebView -- 混合开发(二)
- Android WebView与JavaScript混合使用教程
- android webview与H5混合开发,webview自定义缓存
- 使用WebView同时开发Android和IOS应用
- Android开发之WebView应用
- Android开发之WebView应用
- android混合开发,webview的java与js互操作
- android混合开发,webview的java与js互操作
- Android混合开发之WebView与Javascript交互
- 九度oj 1129
- 解析json数据
- poj 2485 最小生成树中的最大边 prim
- Python爬虫学习记录(1)——百度贴吧图片下载
- BC-52-1001
- android-使用webview来开发混合应用
- UILabel
- poj 1258 最小生成树 prim
- Socket编程步骤
- hdu1014 Uniform Generator
- 我们被叫做90后 | 致青春(催泪好文,自备纸巾)
- 学习笔记 post和get的区别
- R语言之文本挖掘
- socket编程--socket基本概念