German [B4J] WebView - FritzBox Anrufe anzeigen

RWK

Member
Licensed User
Longtime User
Moin,

ich wollte mir eine Anzeige für die FritzBox Anrufe basteln.

Bislang mache ich das in Chrome:
chrome.exe -app http://192.168.100.1/myfritz --window-size 100x600
dann kommt das Anmeldefenster....ich melde mich an... so weit so gut
Nach einer Zeit timed das halt aus und ich muss mich neu anmelden.

Das wollte ich mit meinen Progrämmchen verhindern:

B4X:
#Region Project Attributes
    #MainFormWidth: 310
    #MainFormHeight: 600
#End Region

Sub Process_Globals
    Private fx As JFX
    Private MainForm As Form
    Private WebView1 As WebView
    Private mTimer As Timer
End Sub

Sub AppStart (Form1 As Form, Args() As String)
    MainForm = Form1
    MainForm.RootPane.LoadLayout("TelView") 'Load the layout file.
    MainForm.Show
    mTimer.Initialize("RefreshWebView", 30000)
    RefreshWebView_Tick
End Sub

'Return true to allow the default exceptions handler to handle the uncaught exception.
Sub Application_Error (Error As Exception, StackTrace As String) As Boolean
    Return True
End Sub

Private Sub RefreshWebView_Tick
    WebView1.LoadUrl ("http://192.168.100.1/myfritz")
End Sub

Die Form ist normale Standardform mit nur nem WebView eingefügt.

Das Webview zeigt jetzt leider:

Fritz-My-Call.png


Hab ich eine Komponente vergessen? Ich nehme an das JavaScript ausgeführt werden soll!?

Grüße
 

DonManfred

Expert
Licensed User
Longtime User
ich würde auf jeden Fall versuchen einen webchromeclient zu verwenden.
B4X:
Sub Globals
    Private WebView1 As WebView
End Sub

Sub Activity_Create(FirstTime As Boolean)
    Activity.LoadLayout("1")
    Dim client As JavaObject
    client.InitializeNewInstance(Application.PackageName & ".main$MyChromeClient", Null)
    Dim jo As JavaObject = WebView1
    jo.RunMethod("setWebChromeClient", Array(client))
    WebView1.LoadUrl("http://192.168.100.1/myfritz")
End Sub
 

RWK

Member
Licensed User
Longtime User
Danke schon mal.

Das ist B4A Code, woll?
Geht so nicht bei mir im B4J.

Grüße
 
Top