Sub Activity_Click
Dim i As Intent
i.Initialize("android.intent.action.GET_CONTENT", "")
i.PutExtra("android.intent.extra.ALLOW_MULTIPLE", True)
i.SetType("image/*")
StartActivityForResult(i)
End Sub
Sub ion_Event (MethodName As String, Args() As Object) As Object
If Args(0) = -1 Then 'resultCode = RESULT_OK
Dim i As Intent = Args(1)
Dim jo As JavaObject = i
'Android 4.1+ (API 16)
Dim uris As List
uris.Initialize
Dim clipdata As JavaObject = jo.RunMethod("getClipData", Null)
If clipdata.IsInitialized Then
Dim count As Int = clipdata.RunMethod("getItemCount", Null)
For i2 = 0 To count -1
Dim item As JavaObject = clipdata.RunMethod("getItemAt", Array(i2))
uris.Add(item.RunMethod("getUri", Null))
Next
Else
uris.Add(i.GetData)
End If
Log(uris)
End If
Return Null
End Sub
Sub StartActivityForResult(i As Intent)
Dim jo As JavaObject = GetBA
ion = jo.CreateEvent("anywheresoftware.b4a.IOnActivityResult", "ion", Null)
jo.RunMethod("startActivityForResult", Array As Object(ion, i))
End Sub
Sub GetBA As Object
Dim jo As JavaObject
Dim cls As String = Me
cls = cls.SubString("class ".Length)
jo.InitializeStatic(cls)
Return jo.GetField("processBA")
End Sub