当前位置: 首页 > news >正文

福建网站制作海口网站建设fwlit

福建网站制作,海口网站建设fwlit,免费发布便民信息平台,wordpress网站百度数据本文转自#xff1a;http://hi.baidu.com/relayon/blog/item/92b15463677d3e6b0d33fa79.html 在移动互联网的争夺日趋白热化#xff0c;各个互联网巨头纷纷推出自己的手机浏览器#xff0c;浏览器市场的争夺从桌面转移到了手机。在Android手机中内置了一款高性能webkit内核浏…本文转自http://hi.baidu.com/relayon/blog/item/92b15463677d3e6b0d33fa79.html 在移动互联网的争夺日趋白热化各个互联网巨头纷纷推出自己的手机浏览器浏览器市场的争夺从桌面转移到了手机。在Android手机中内置了一款高性能webkit内核浏览器在SDK中封装为一个叫做WebView组件。什么是webkitWebKit是Mac OS X v10.3及以上版本所包含的软件框架对v10.2.7及以上版本也可通过软件更新获取。同时WebKit也是Mac OS X的Safari网页浏览器的基础。WebKit是一个开源项目主要由KDE的KHTML修改而来并且包含了一些来自苹果公司的一些组件。传统上WebKit包含一个网页引擎WebCore和一个脚本引擎JavaScriptCore它们分别对应的是KDE的KHTML和KJS。不过随着JavaScript引擎的独立性越来越强现在WebKit和WebCore已经基本上混用不分例如Google Chrome和Maxthon 3采用V8引擎却仍然宣称自己是WebKit内核。这里我们初步体验一下在android是使用webview浏览网页在SDK的Dev Guide中有一个WebView的简单例子 。在开发过程中应该注意几点1.AndroidManifest.xml中必须使用许可android.permission.INTERNET,否则会出Web page not available错误。2.如果访问的页面中有Javascript则webview必须设置支持Javascript。webview.getSettings().setJavaScriptEnabled(true);  3.如果页面中链接如果希望点击链接继续在当前browser中响应而不是新开Android的系统browser中响应该链接必须覆盖webview的WebViewClient对象。[code]mWebView.setWebViewClient(new WebViewClient(){  public boolean shouldOverrideUrlLoading(WebView view, String url) {  view.loadUrl(url);  return true;  }  });[/code]4.如果不做任何处理浏览网页点击系统“Back”键整个Browser会调用finish()而结束自身如果希望浏览的网页回退而不是推出浏览器需要在当前Activity中处理并消费掉该Back事件。[code]public boolean onKeyDown(int keyCode, KeyEvent event) {  if ((keyCode KeyEvent.KEYCODE_BACK) mWebView.canGoBack()) {  mWebView.goBack();  return true;  }  return super.onKeyDown(keyCode, event);  }  [/code]下一步让我们来了解一下android中webview是如何支持javascripte自定义对象的在w3c标准中js有windowhistorydocument等标准对象同样我们可以在开发浏览器时自己定义我们的对象调用手机系统功能来处理这样使用js就可以为所欲为了。看一个实例[code]public class WebViewDemo extends Activity {  private WebView mWebView;  private Handler mHandler new Handler();  public void onCreate(Bundle icicle) {  super.onCreate(icicle);  setContentView(R.layout.webviewdemo);  mWebView (WebView) findViewById(R.id.webview);  WebSettings webSettings mWebView.getSettings();  webSettings.setJavaScriptEnabled(true);  mWebView.addJavascriptInterface(new Object() {  public void clickOnAndroid() {  mHandler.post(new Runnable() {  public void run() {  mWebView.loadUrl(javascript:wave());  }  });  }  }, demo);  mWebView.loadUrl(file:///android_asset/demo.html);  }  }  [/code]我们看addJavascriptInterface(Object obj,String interfaceName)这个方法该方法将一个java对象绑定到一个javascript对象中javascript对象名就是 interfaceNamedemo作用域是Global。这样初始化webview后在webview加载的页面中就可以直接通过 javascript:window.demo访问到绑定的java对象了。来看看在html中是怎样调用的。[code]html  script languagejavascript  function wave() {  document.getElementById(droid).srcandroid_waving.png;  }  /script  body  a onClickwindow.demo.clickOnAndroid()  img iddroid srcandroid_normal.png/br  Click me!  /a  /body  /html  [/code]这样在javascript中就可以调用java对象的clickOnAndroid()方法了同样我们可以在此对象中定义很多方法比如发短信调用联系人列表等手机系统功能。,这里wave()方法是java中调用javascript的例子。这里还有几个知识点1)为了让WebView从apk文件中加载assetsAndroid SDK提供了一个schema前缀为file:///android_asset/。WebView遇到这样的schema就去当前包中的assets目录中找内容。如上面的file:///android_asset/demo.html2)addJavascriptInterface方法中要绑定的Java对象及方法要运行另外的线程中不能运行在构造他的线程中这也是使用Handler的目的。
http://www.zqtcl.cn/news/73319/

相关文章:

  • 虚拟主机搭建网站wordpress sae 4.4
  • 企业网站成功案例wordpress 自定义文章列表
  • 网站引导页动态效果怎么做服装印花图案网站
  • 建筑工程网上申报seo培训资料
  • 一站式服务宣传语百度怎么做广告推广
  • 做网站时,404网页如何指向企业展厅设计公司的资质是什么
  • 网站服务器要求东莞网站建设管理
  • 安泽网站建设wordpress 韩国 主题公园
  • 烟台电商网站建设网站设计的基本步骤和方法
  • 自己怎么做网站赚钱吗四川网站建设有哪些
  • 创建一个网站英语中国建设银行货币基金网站
  • 网站管理和维护昆山做网站优化
  • 网站开发自学西安网站制作建设
  • 重庆网站seo推广公司杭州的网站设计
  • 朔州做网站的公司10万以下纯电动汽车排名
  • 一站式免费建站平台古风网页设计优秀作品
  • 做网站哪个公司最好展览展示设计公司排名
  • 许昌做网站汉狮网络十种网络推广的方法
  • 北京设计网站填空题ww秒懂2023
  • 公章电子版在线制作网站优化网站公司价格是多少钱
  • 哪个网站做餐饮推广最好直播代运营公司
  • 公司企业网站的选择2003网站的建设
  • 手机网站推荐几个保洁公司在哪个网站做推广比较好
  • 网站降权查询工具seo网站排名
  • 深圳 网站设计 公司备案网站可以做论坛么
  • 大良营销网站建设公司什么是设计方案
  • 网站建设费用包括海拉尔网站设计
  • 怎么做网站建设销售长沙模板建站源码
  • 网站建设互联网加wordpress+时钟插件
  • 永济微网站建设费用外贸公司网站建设费会计科目