Public Sub Scan As ResumableSub
Dim options As JavaObject
options.InitializeNewInstance("com/google/mlkit/vision/documentscanner/GmsDocumentScannerOptions$Builder".Replace("/", "."), Null)
options.RunMethod("setResultFormats", Array(102, Array As Int()))
options = options.RunMethod("build", Null)
Dim scanner As JavaObject
scanner = scanner.InitializeStatic("com/google/mlkit/vision/documentscanner/GmsDocumentScanning".Replace("/", ".")).RunMethod("getClient", Array(options))
Dim ctxt As JavaObject
ctxt.InitializeContext
Dim IntentSender As Object = scanner.RunMethodJO("getStartScanIntent", Array(ctxt)).RunMethod("getResult", Null)
Me.as(JavaObject).RunMethod("sendIntentSenderForResult", Array(ctxt, IntentSender))
Wait For Result_Arrived(Intent1 As Object)
Dim ScanResult As DocumentScanResult
ScanResult.Initialize
ScanResult.ImageUris.Initialize
If Intent1 = Null Then
ScanResult.Success = False
Else
ScanResult.Success = True
Dim Result As JavaObject
Result = Result.InitializeStatic("com/google/mlkit/vision/documentscanner/GmsDocumentScanningResult".Replace("/", ".")).RunMethod("fromActivityResultIntent", Array(Intent1))
Dim pdf As JavaObject = Result.RunMethod("getPdf", Null)
ScanResult.ImageUris.Add(pdf.RunMethodJO("getUri", Null).RunMethod("toString", Null))
End If
Return ScanResult
End Sub