#Region Project Attributes
#ApplicationLabel: B4A Example
#VersionCode: 5
#VersionName: 1.4
#SupportedOrientations: unspecified
#CanInstallToExternalStorage: False
#End Region
#Region Activity Attributes
#FullScreen: False
#IncludeTitle: True
#End Region
#BridgeLogger: True
Sub Process_Globals
End Sub
Sub Globals
Private txtUrl As EditText
Private btnGo As Button
Private UltimateWebView1 As UltimateWebView
End Sub
Sub Activity_Create(FirstTime As Boolean)
Activity.LoadLayout("Main")
UltimateWebView1.Settings.JavaScriptEnabled = True
UltimateWebView1.Settings.JavaScriptCanOpenWindowsAutomatically = True
UltimateWebView1.WebChromeClientEnabled=True
UltimateWebView1.Settings.SupportMultipleWindows=True
UltimateWebView1.WebChromeClientEnabled=True
UltimateWebView1.Settings.SupportMultipleWindows=True
txtUrl.Text="https://zomato.com/partners"
End Sub
Sub Activity_Resume
End Sub
Sub Activity_Pause (UserClosed As Boolean)
If UserClosed Then
ExitApplication
End If
End Sub
Sub Activity_KeyPress (KeyCode As Int) As Boolean
If KeyCode=KeyCodes.KEYCODE_BACK Then
If UltimateWebView1.CanGoBack=True Then
UltimateWebView1.GoBack
Return True
Else
Return False
End If
Else
Return False
End If
End Sub
Sub btnGo_Click
Dim Headerrs As Map
Headerrs.Initialize
Headerrs.Put("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.183 Safari/537.36")
UltimateWebView1.LoadUrl2(txtUrl.Text,Headerrs)
End Sub
Private Sub UltimateWebView1_FileDownloadInitialized (DownloadProperties1 As DownloadProperties)
Log("Download INITIALIZED")
UltimateWebView1.StartFileDownload(DownloadProperties1,"TEST",True,True)
End Sub
Private Sub UltimateWebView1_FileDownloadStarted (DownloadProperties1 As DownloadProperties)
Log("Download STARTED")
End Sub
Private Sub UltimateWebView1_FileDownloadCompleted (Success As Boolean, DownloadProperties1 As DownloadProperties)
Log("Download COMPLETED; Success:" & Success)
End Sub
Private Sub UltimateWebView1_OverrideUrl (Url As String) As Boolean
Return False
End Sub
Private Sub UltimateWebView1_OverrideUrl2 (WebResourceRequest1 As WebResourceRequest) As Boolean
Return False
End Sub
Private Sub UltimateWebView1_OverrideUrlWithExternalAppIntent (Url As String, ExternalAppIntent As Intent) As Boolean
StartActivity(ExternalAppIntent)
Return True
End Sub
Private Sub UltimateWebView1_OverrideUrlWithExternalAppIntent2 (WebResourceRequest1 As WebResourceRequest, ExternalAppIntent As Intent) As Boolean
StartActivity(ExternalAppIntent)
Return True
End Sub
Private Sub UltimateWebView1_FileChooserInitialized (FilePathCallback As Object, FileChooserParams1 As FileChooserParams)
UltimateWebView1.FileChooserStart(FilePathCallback,FileChooserParams1,False)
End Sub
Private Sub UltimateWebView1_PageFinished (Url As String)
End Sub
Private Sub UltimateWebView1_PageStarted (Url As String, FavIcon As Bitmap)
Log(Url)
End Sub
Private Sub UltimateWebView1_ReceivedIcon (Icon As Bitmap)
End Sub
Private Sub UltimateWebView1_PermissionRequest (RequestedPermission As String)
Dim Permissions As RuntimePermissions
Permissions.CheckAndRequest(RequestedPermission)
Wait For Activity_PermissionResult (Permission As String, result As Boolean)
UltimateWebView1.GrantPermission(result)
End Sub
Private Sub UltimateWebView1_ReceivedError (ErrorCode As Int, Description As String, FailingUrl As String)
Log("error " & ErrorCode)
End Sub
Private Sub UltimateWebView1_ReceivedError2 (WebResourceRequest1 As WebResourceRequest, WebResourceError1 As WebResourceError)
End Sub
Private Sub UltimateWebView1_ReceivedHttpError (WebResponseRequest1 As WebResourceRequest, WebResourceResponse1 As WebResourceResponse)
End Sub
Private Sub UltimateWebView1_ReceivedHttpAuthRequest (HttpAuthHandler1 As HttpAuthHandler, HttpAuthRequestProperties1 As HttpAuthRequestProperties)
Log("ReceivedHttpAuthRequest")
Log(HttpAuthRequestProperties1.Host)
Log(HttpAuthRequestProperties1.Realm)
End Sub
Private Sub UltimateWebView1_ReceivedLoginRequest (LoginRequestProperties1 As LoginRequestProperties)
Log("ReceivedLoginRequest")
Log(LoginRequestProperties1.Realm)
Log(LoginRequestProperties1.Account)
Log(LoginRequestProperties1.Args)
End Sub
Private Sub UltimateWebView1_ShouldInterceptRequest (Request As WebResourceRequest) As WebResourceResponse
Log("ShouldInterceptRequest")
Log(Request.GetUrl)
Dim ins As InputStream
ins.InitializeFromBytesArray(Array As Byte(100,231,155),0,3)
Dim Response As WebResourceResponse
Response.Initialize
Response.Create("text/plain","utf-8",ins)
Return Response
Return Null
End Sub
Private Sub UltimateWebView1_JsAlert (JsProperties1 As JsProperties, JsResult1 As JsResult) As Boolean
Log(JsProperties1.Message)
Return False
End Sub
Private Sub UltimateWebView1_JsBeforeUnload (JsProperties1 As JsProperties, JsResult1 As JsResult) As Boolean
Return False
End Sub
Private Sub UltimateWebView1_RenderProcessGone (DidCrash As Boolean, RendererPriorityAtExit As Int)
Log(DidCrash)
Log(RendererPriorityAtExit)
End Sub
Private Sub UltimateWebView1_JsConfirm (JsProperties1 As JsProperties, JsResult1 As JsResult) As Boolean
Return False
End Sub
Private Sub UltimateWebView1_CreateChildWindow (IsDialog As Boolean, IsUserGesture As Boolean) As UltimateWebView
Log("Added New Child Window")
Dim NewUltimateView As UltimateWebView
NewUltimateView.Initialize(Me,"NewUltimateView")
NewUltimateView.EnableSlowWholeDocumentDraw
NewUltimateView.Settings.ImportSettingsFrom(UltimateWebView1)
NewUltimateView.WebViewClientEnabled=True
NewUltimateView.WebChromeClientEnabled=True
NewUltimateView.DownloadListenerEnabled=True
NewUltimateView.CookieManager.AcceptCookies=True
NewUltimateView.CookieManager.AcceptFileSchemeCookies=True
NewUltimateView.CookieManager.AcceptThirdPartyCookies=True
NewUltimateView.CookieManager.Flush
Return NewUltimateView
End Sub
Private Sub NewUltimateView_FileDownloadInitialized (DownloadProperties1 As DownloadProperties)
UltimateWebView1.StartFileDownload(DownloadProperties1,"Test",True,True)
End Sub
Sub NewUltimateView_PageFinished (Url As String)
Log("ChildFinishedPage: " & Url)
End Sub
Sub NewUltimateView_OverrideUrl (WebResourceRequest1 As WebResourceRequest) As Boolean
Log("OverridenChildUrl: " & WebResourceRequest1.GetUrl)
Return False
End Sub