Sub SetEngineByPackage(sPackage As String, t As TTS, jo As JavaObject) As TTS
Dim ph As Phone
Dim r As Reflector
If ph.SdkVersion <= 14 Then
r.Target = t
Log("Setting Engine " & sPackage & " as default.")
r.RunMethod2("setEngineByPackageName", sPackage, "java.lang.String")
Return t
Else
Dim Listener As JavaObject
Listener.InitializeStatic("android.speech.tts.TextToSpeech")
Listener.CreateEvent("android.speech.tts.TextToSpeech.OnInitListener", "Starter.tts_Ready", False)
'Dim j As JavaObject
'j.InitializeContext
Dim m As JavaObject
'm.InitializeNewInstance("android.speech.tts.TextToSpeech", Array(j.GetField("context"), Listener, sPackage))
'm.InitializeNewInstance("android.speech.tts.TextToSpeech", Array(GetContext(activity), Listener, sPackage))
m.InitializeNewInstance("android.speech.tts.TextToSpeech", Array(jo, Listener, sPackage))
Return m
End If
End Sub
'
'Sub GetContext(activity As Object) As JavaObject
' Return GetBA(activity).GetField("context")
'End Sub
'
'Sub GetBA(activity As Object) As JavaObject
' Dim jo As JavaObject
' Dim cls As String = activity
' cls = cls.SubString("class ".Length)
' jo.InitializeStatic(cls)
' Return jo.GetFieldJO("processBA")
'End Sub