App Inventor 2 CustomWebView 拓展:高级版Web浏览器,完美浏览现代Web前端页面

« 返回首页

CustomWebView 拓展

高级版Web浏览器,完美浏览现代Web前端页面,由中文网更新及维护,基于开源项目开发。

原生 Web浏览器 组件无法正常浏览部分现代Web页面,无法浏览带端口url的页面,这款拓展统统解决。

  • .aix 拓展下载:

cn.fun123.CustomWebView.aix

基础使用方法:

例如,使用此拓展访问 react 写的网页,效果如下:

而使用原生的Web浏览器则无法访问:

属性

AdHosts
设置将被阻止的广告主机
AutoLoadImages
返回WebView是否应该加载图像资源
AutoplayMedia
返回WebView是否需要用户手势才能播放媒体
BackgroundColor
设置webview的背景颜色
BlockAds
设置是否阻止广告
BlockNetworkLoads
返回WebView是否不应该从网络加载资源
CacheMode
获取活动webview的缓存模式
CurrentPageTitle
当前查看页面的标题
CurrentUrl
当前查看页面的URL
返回是否启用了深度链接
DesktopMode
返回是否以桌面模式加载内容
DisplayZoom
获取WebView是否应显示屏幕缩放控件
EnableJS
返回webview是否支持JavaScript执行
FileAccess
返回webview是否可以访问本地文件
设置是否跟随链接
FontSize
返回文本的字体大小
InitialScale
设置活动WebView的初始缩放比例。0表示默认值。如果初始缩放比例大于0,WebView将以此值作为初始缩放比例启动。
LayerType
获取图层类型
LoadWithOverviewMode
返回WebView是否以概览模式加载页面
LongClickable
返回是否启用了文本选择和上下文菜单
OverScrollMode
获取过度滚动模式
PromptForPermission
设置webview是否会提示权限并触发’OnPermissionRequest’事件,否则假定权限已授予。
RotationAngle
获取旋转角度
ScrollBar
是否显示水平和垂直滚动条
ScrollBarStyle
获取滚动条样式
Scrollable
可滚动属性
SupportMultipleWindows
返回WebView是否支持多窗口
UseWideViewPort
返回WebView是否应启用对’viewport’ HTML元标记的支持或应使用宽视口。
UserAgent
设置WebView的用户代理字符串。如果字符串为null或空,将使用系统默认值。
UsesLocation
是否授予应用程序使用Javascript地理位置API的权限
VibrationEnabled
返回长按时是否启用了振动反馈
Visible
返回当前webview的可见性
WebViewString
获取webview字符串
ZoomEnabled
获取WebView是否应支持使用其屏幕缩放控件和手势进行缩放
ZoomPercent
获取页面的缩放百分比

事件

AfterArchiveSaved(success,filePath)
在’SaveArchive’方法后触发的事件。如果’success’为true则返回文件路径,否则返回空字符串。
AfterJavaScriptEvaluated(result)
在评估JavaScript后触发的事件并返回结果。
CookiesRemoved(successful)
在’ClearCokies’方法后触发的事件并返回结果
FileUploadNeeded(id,mimeType,isCaptureEnabled)
当需要文件上传时触发的事件
FindResultReceived(id,activeMatchOrdinal,numberOfMatches,isDoneCounting)
在’Find’方法后触发的事件,包含整数’activeMatchOrdinal’、’numberOfMatches’和’isDoneCounting’
GotCertificate(isSecure,issuedBy,issuedTo,validTill)
在获取当前显示URL/网站的SSL证书后触发的事件,包含布尔值’isSecure’和字符串’issuedBy’、’issuedTo’和’validTill’。如果’isSecure’为false且其他值为空,则假定网站不安全
GotPrintResult(printId,isCompleted,isFailed,isBlocked)
在获取先前打印结果后触发的事件。
LongClicked(id,item,secondaryUrl,type)
当在webview中长按某物时触发的事件,包含项目(图像、字符串、空等)和类型(项目类型如0、1、8等)
OnCloseWindowRequest(id)
当需要关闭窗口时触发的事件
OnConsoleMessage(message,lineNumber,sourceID,level)
在获取控制台消息后触发的事件。
OnDownloadNeeded(id,url,contentDisposition,mimeType,size)
当需要下载时触发的事件。
OnErrorReceived(id,message,errorCode,url)
在加载URL期间收到任何错误时触发的事件,并返回消息、错误代码和失败的URL
OnFormResubmission(id)
当需要重新提交表单时触发的事件
OnGeolocationRequested(origin)
当页面请求位置访问时触发的事件。开发者必须自行处理/显示对话框。
OnHideCustomView()
当当前页面退出全屏模式时触发的事件
OnJsAlert(id,url,message)
当JavaScript需要向用户显示警告时触发的事件
OnJsConfirm(id,url,message)
告诉显示确认对话框给用户。
OnJsPrompt(id,url,message,defaultValue)
当JavaScript需要用户输入时触发的事件
OnNewWindowRequest(id,isDialog,isPopup)
当webview请求新窗口时触发的事件,包含布尔值’isDialog’和’isPopup’
OnPermissionRequest(permissionsList)
当网站以列表格式请求特定权限时触发的事件。
OnProgressChanged(id,progress)
当页面加载进度发生变化时触发的事件。
OnReceivedHttpAuthRequest(id,host,realm)
通知WebView收到了HTTP认证请求。
OnReceivedSslError(errorCode)
OnReceivedSslError事件
OnScrollChanged(id,scrollX,scrollY,oldScrollX,oldScrollY,canGoLeft,canGoRight)
当webview被滚动时触发的事件
OnShowCustomView()
当当前页面进入全屏模式时触发的事件
PageLoaded(id)
当页面加载完成时触发的事件。
PageStarted(id,url)
指示页面加载已在web视图中开始的事件。
Swiped(id,direction)
当webview被滑动时触发的事件
WebViewStringChanged(value)
当JavaScript调用AppInventor.setWebViewString时运行此事件。

方法

AllowGeolocationAccess(allow,remember)
AllowGeolocationAccess方法
CanGoBack()
获取此WebView是否有后退历史项
CanGoBackOrForward(steps)
获取页面是否可以后退或前进给定的步数。
CanGoForward()
获取此WebView是否有前进历史项。
CancelPrinting()
取消当前打印作业。您可以请求取消排队、已开始、被阻止或失败的打印作业。
ClearCache()
清除资源缓存。
ClearCookies()
移除所有cookie并触发’CookiesRemoved’事件
ClearFormData(id)
清除webview的表单数据
由Xoma添加
ClearInternalHistory()
告诉此WebView清除其内部前进/后退列表。
ClearLocation()
清除所有位置偏好设置。
ClearMatches()
清除文本匹配周围的高亮显示。
ConfirmJs(confirm)
是否继续JavaScript发起的请求
ContentHeight()
获取HTML内容的高度
ContinueJs(input)
向JavaScript输入确认响应
CreateShortcut(url,iconPath,title)
在主屏幕上创建给定网站的快捷方式
CreateWebView(container,id)
在给定的布局中创建具有id的webview
CurrentId()
返回当前id
DismissJsAlert()
关闭先前请求的JavaScript警告
EvaluateJavaScript(script)
在当前显示页面的上下文中异步评估JavaScript。
Find(string)
查找页面上所有匹配项并高亮显示,异步进行。连续调用此方法将取消任何待处理的搜索。
FindNext(forward)
如果’forward’为true则高亮并滚动到下一个匹配项,否则滚动到上一个匹配项。
GetCookies(url)
获取特定URL的cookie
GetIds()
返回已使用id的列表
GetInternalHistory(id)
获取给定webview的内部历史记录。
GetProgress(id)
获取给定webview的进度
GetScrollX()
返回webview的滚动左侧位置
GetScrollY()
返回webview的滚动顶部位置
GetSslCertificate()
获取主顶级页面的SSL证书并触发’GotCertificate’事件
GetWebView(id)
从id返回webview对象
GoBack()
在此WebView的历史记录中后退。
GoBackOrForward(steps)
转到距离当前项指定步数的历史项。如果后退则为负数,如果前进则为正数。
GoForward()
在此WebView的历史记录中前进。
GoToUrl(url)
加载给定的URL。
GrantPermission(permissions)
授予webview给定的权限。使用空列表拒绝请求。
HideCustomView()
隐藏先前显示的自定义视图
InvokeZoomPicker()
调用此WebView的图形缩放选择器小部件。这将导致缩放小部件出现在屏幕上以控制此WebView的缩放级别。注意它不检查缩放是否启用。
LoadHtml(html)
使用’data’方案URL将给定数据加载到此WebView中。
LoadInNewWindow(id)
在给定的webview中加载请求的URL
LoadWithHeaders(url,headers)
使用指定的附加HTTP标头加载给定的URL,这些标头以列表的列表形式定义。
PageDown(bottom)
将WebView的内容向下滚动半页大小
PageUp(top)
将WebView的内容向上滚动半页大小
PauseWebView(id)
尽最大努力暂停可以安全暂停的任何处理,例如动画和地理位置。请注意,此调用不会暂停JavaScript。
PostData(url,data)
使用’POST’方法将URL与postData加载到活动WebView中。
PrintWebContent(documentName)
使用给定的文档名称打印webview的内容
ProceedHttpAuthRequest(username,password)
指示WebView使用给定的凭据继续进行身份验证。如果两个参数都为空,则将取消请求。
ProceedSslError(proceed)
ProceedSslError方法
注册在关联的外部应用中打开指定的链接
Reload()
重新加载当前URL。
RemoveWebView(id)
销毁webview并将其完全从视图系统中移除
RestartPrinting()
重新启动当前/先前的打印作业。您可以请求重新启动失败的打印作业。
ResubmitForm(reSubmit)
是否重新提交表单。
ResumeWebView(id)
恢复先前暂停的WebView。
SaveArchive(dir)
将当前站点保存为web存档
ScrollTo(x,y)
将webview滚动到给定位置
SetCookies(url,cookieString)
为给定URL设置cookie
SetVisibility(id,visibility)
按id设置webview的可见性
SetWebView(id)
按id将特定webview设置为当前webview
StopLoading()
停止当前加载。
UploadFile(contentUri)
从内容URI上传给定文件。使用空字符串取消上传请求。
ZoomBy(zoomP)
在WebView中按给定缩放百分比执行缩放操作
ZoomIn()
在WebView中执行放大
ZoomOut()
在WebView中执行缩小

BrowserPromptHelper

BrowserPromptHelper组件

属性

None

事件

OnResume(url)
当应用程序恢复时触发的事件,并给出启动此活动/屏幕的URL(如果有),否则为空字符串

方法

GetStartUrl()
返回启动当前活动的URL

DownloadHelper

DownloadHelper组件

属性

NotificationVisibility
设置下载通知可见性

事件

DownloadCompleted()
下载完成时触发的事件
DownloadFailed()
下载失败时触发的事件
DownloadProgressChanged(progress)
下载进度变化时触发的事件
DownloadStarted(id)
下载开始时触发的事件
GotFileSize(fileSize)
获取文件大小后触发的事件

方法

Cancel()
取消当前下载请求
Download(url,mimeType,fileName,downloadDir)
下载给定文件
GetFileSize(url)
尝试获取文件大小
GetMimeType(id)
GetMimeType方法
GetUriString(id)
GetUriString方法
GuessFileName(url,mimeType,contentDisposition)
返回猜测的文件名
文档反馈