#Region Project Attributes
#ApplicationLabel: B4A Example
#VersionCode: 1
#VersionName:
'SupportedOrientations possible values: unspecified, landscape or portrait.
#SupportedOrientations: unspecified
#CanInstallToExternalStorage: False
#End Region
#Region Activity Attributes
#FullScreen: False
#IncludeTitle: True
#End Region
#AdditionalJar: slf4j-api-1.7.25
'#AdditionalJar: sshj-0.23.0
#AdditionalJar: gradle-wrapper
'#AdditionalJar: eddsa-0.2.0
#AdditionalJar: bcpg-jdk15on-1.58.0.0
#BridgeLogger: True
'#MergeLibraries: False
'Activity module
Sub Process_Globals
'These global variables will be declared once when the application starts.
'These variables can be accessed from all modules.
Dim ssh As SSHJ
End Sub
Sub Globals
'These global variables will be redeclared each time the activity is created.
'These variables can only be accessed from this module.
'Dim SSH2 As jkSSH2
End Sub
Sub Activity_Create(FirstTime As Boolean)
If FirstTime = True Then
Log("Diable")
DisableStrictMode
End If
ssh.Initialize2("ssh", 15)
ssh.LoadKnownHosts
ssh.AddHostKeyPromiscuousVerifier
ssh.AddAuthPassword("password")
ssh.Connect("192.168.10.18", 22, "root" )
ssh.Exec("uname -a && date && uptime && who", 10)
End Sub
Sub Activity_Resume
End Sub
Sub DisableStrictMode
Dim jo As JavaObject
jo.InitializeStatic("android.os.Build.VERSION")
If jo.GetField("SDK_INT") > 9 Then
Dim policy As JavaObject
policy = policy.InitializeNewInstance("android.os.StrictMode.ThreadPolicy.Builder", Null)
policy = policy.RunMethodJO("permitAll", Null).RunMethodJO("build", Null)
Dim sm As JavaObject
sm.InitializeStatic("android.os.StrictMode").RunMethod("setThreadPolicy", Array(policy))
End If
End Sub
Sub Activity_Pause (UserClosed As Boolean)
End Sub
Sub SSH_CmdExecuted (Success As Boolean, Result As List, TaskId As Int)
Log (TaskId)
If Success Then
For i=0 To Result.Size-1
Log(Result.Get(i) & CRLF)
Next
End If
ssh.close
End Sub
Sub SSH_ConnectionLost (Reason As String)
Log(Reason)