Sub Class_Globals
Dim defaultHostIP As String = "172.30.2.103"
Dim defaultHostPort As Int = 40000
Dim selectedHostIP As String
Dim selectedHostPort As Int
Dim defaultServerPort As Int = 40000
Dim bufferToHold As Int = 100
Private countBuffer As Int
Private socket1 As Socket
Private serverSocket1 As ServerSocket
Private sb As StringBuilder
Private sf As StringFunctions
Private os As OutputStream
End Sub
'the flag determines whether the phone shall be used only as client or also as server
Public Sub Initialize(asClientOnly As Boolean)
If Not(asClientOnly) Then serverSocket1.Initialize(defaultServerPort,"server")
socket1.Initialize("hostFound")
If File.Exists(File.DirInternal,"defaults.txt") Then
Dim s As String=File.ReadString(File.DirInternal,"defaults.txt")
defaultHostIP = sf.Split(s,":").Get(0)
defaultHostPort = sf.Split(s,":").Get(1)
End If
sb.Initialize
sf.Initialize
End Sub
Public Sub isInternetAvailable As Boolean
Return Main.myDevice.GetDataState=="CONNECTED" Or Main.myDevice.GetSettings("wifi_on")<>0
End Sub
'check whether the scocket has connected to a server
Sub hostFound As Boolean
Return socket1.Connected
End Sub
'connect socket to a server of given host:port; timeout=0 disable connection timeout
Sub connectTo(host As String,port As Int,timeout As Int)
ToastMessageShow("trying to connect to "&host&":"&port,True)
socket1.Connect(host,port,timeout)
End Sub
'event triggered from a incoming server connection demand
Sub server_NewConnection (Successful As Boolean, NewSocket As Socket)
End Sub
'triggered when the socket connects to a server
Sub hostFound_Connected(Successful As Boolean)
If Successful = False Then
Msgbox(LastException.Message, "Error while connecting")
Return
Else
ToastMessageShow("Connected to "&selectedHostIP&":"&selectedHostPort,False)
End If
os = socket1.OutputStream
End Sub
'sends a string as a new line to the connected server
Sub sendLineToHost(toSend As String,emptyBuffer As Boolean)
If os.IsInitialized Then
toSend = toSend&CRLF
os.WriteBytes(toSend.GetBytes("UTF-8"),0,toSend.GetBytes("UTF-8").Length)
countBuffer = countBuffer + 1
If emptyBuffer Then
os.Flush
Else If(countBuffer>bufferToHold) Then
countBuffer = 0
os.Flush
End If
End If
End Sub
'launches the android.settings.WIFI_SETTINGS activity
Sub popUpWifiSettings
Dim i As Intent
i.Initialize("android.settings.WIFI_SETTINGS", "")
ProgressDialogShow("Activating WiFi")
StartActivity(i)
ProgressDialogHide
End Sub