奇人共赏web

链接参考:https://wwz.lanzn.com/ih5W323dyz1e

链接参考2:https://wwz.lanzn.com/iXmx823dz0la

 


--浏览器控件讲解
function 状态栏高度()
  if Build.VERSION.SDK_INT >= 19 then
    resourceId = activity.getResources().getIdentifier("status_bar_height", "dimen", "android")
    return activity.getResources().getDimensionPixelSize(resourceId)
   else
    return 0
  end
end
layout=--全屏框架
{
  LinearLayout;--线性控件
  orientation='vertical';--布局方向
  layout_width='fill';--布局宽度
  layout_height='fill';--布局高度
  {
    LuaWebView;--浏览器控件
    layout_marginTop=状态栏高度(),
    layout_width='fill';--浏览器宽度
    layout_height='fill';--浏览器高度
    id='webView';--控件ID
  };

}
activity.setContentView(loadlayout(layout))


import "android.webkit.WebView"
webView.addJavascriptInterface({},"JsInterface")--漏洞封堵代码

--常用API
webView.loadUrl("https://longlong233.github.io/aluaidiots/")--加载网页
--webView.loadUrl("file:///storage/sdcard0/index.html")--加载本地文件

--webView.loadUrl("view-source:"..webView.url)--查看网页源码
--webView.evaluateJavascript([[JavaScript代码]],nil)--加载JS代码
--[[
webView.requestFocusFromTouch()--设置支持获取手势焦点
--webView.getSettings().setForceDark(WebSettings.FORCE_DARK_ON)--设置深色模式

webView.getSettings().setSupportZoom(true); --支持网页缩放
webView.getSettings().setBuiltInZoomControls(true); --支持缩放
webView.getSettings().setLoadWithOverviewMode(true);--缩放至屏幕的大小
webView.getSettings().setDisplayZoomControls(false); --隐藏自带的右下角缩放控件

webView.getSettings().setLoadsImagesAutomatically(true);--图片自动加载
webView.getSettings().setUseWideViewPort(true) --图片自适应

webView.setHorizontalScrollBarEnabled(false)--设置是否显示水平滚动条
webView.setVerticalScrollbarOverlay(true)--设置垂直滚动条是否有叠加样式
webView.setScrollBarStyle(webView.SCROLLBARS_OUTSIDE_OVERLAY)--设置滚动条的样式

webView.getSettings().setDomStorageEnabled(true); --dom储存数据
webView.getSettings().setDatabaseEnabled(true); --数据库
webView.getSettings().setAppCacheEnabled(true); --启用缓存
webView.getSettings().setCacheMode(webView.getSettings().LOAD_CACHE_ELSE_NETWORK);--设置缓存加载方式
webView.getSettings().setAllowFileAccess(true);--允许访问文件
webView.getSettings().setSaveFormData(true); --保存表单数据,就是输入框的内容,但并不是全部输入框都会储存
webView.getSettings().setAllowContentAccess(true); --允许访问内容
webView.getSettings().setJavaScriptEnabled(true); --支持js脚本
webView.getSettings().supportMultipleWindows() --设置多窗口
webView.setLayerType(View.LAYER_TYPE_HARDWARE,nil);--硬件加速
webView.getSettings().setPluginsEnabled(true)--支持插件
webView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true); --//支持通过JS打开新窗口

webView.getSettings().setUserAgentString('Mozilla/5.0 (Linux; Android 10.1.2; Build/NJH47F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.109 Safari/537.36')--设置浏览器标识(UA)
webView.getSettings().setDefaultTextEncodingName("utf-8")--设置编码格式
webView.getSettings().setTextZoom(100)--设置字体大小:100表示正常,120表示文字放大1.2倍
webView.getSettings().setAcceptThirdPartyCookies(true) --接受第三方cookie
webView.getSettings().setSafeBrowsingEnabled(true)--安全浏览
webView.getSettings().setGeolocationEnabled(true);--启用地理定位

]]
--webView.goForward()--网页前进
--webView.goBack()--网页后退
--webView.reload()--刷新网页
--webView.stopLoading()--停止加载网页


--webView.getTitle()--获取网页标题
--webView.getUrl()--获取当前Url
--webView.getFavicon()--获得当前网页的图标
--webView.getProgress()--获得网页加载进度


--状态监听
webView.setWebViewClient{
  shouldOverrideUrlLoading=function(view,url)
    --Url即将跳转
  end,
  onPageStarted=function(view,url,favicon)
    --网页即将加载
  end,
  onPageFinished=function(view,url)
    --网页加载完成
  end,
  onReceivedError=function(view,code,des,url)
    --网页加载失败
  end,
  onLoadResource=function(view,url)
    --加载页面资源时
  end,
  shouldInterceptRequest=function(view,url)
    --加载url制定的资源
  end,
  onReceivedSslError=function(view,handler,err)
    --加载SSL证书错误时
  end,

}

webView.setWebChromeClient(luajava.override(luajava.bindClass "android.webkit.WebChromeClient",{
  onReceivedTitle=function(super,view,title)
    --获取到网页标题
  end,
  onReceivedIcon=function(super,view,title)
    --获取到网页图标
  end,
  onProgressChanged=function(view,progress)
    --页面加载进度
  end,

}))

webView.setDownloadListener{
  onDownloadStart=function(url,userAgent,contentDisposition,mimetype,contentLength)
    --即将下载文件时(链接,UA,处理,类型,大小)
    local 大小=string.format("%.2f",contentLength/1048576).."MB"

  end,

}

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值