Как создать экземпляр java-объекта с помощью JNI (Delphi)

Я все еще довольно новичок в программировании в Delphi, и я ничего не знаю о Java. Однако мне нужно написать программу, использующую RAD Studio, которая может читать амплитуду аудиовхода. Мне не удалось найти способ сделать это в Delphi (что я мог себе позволить), но я нашел способ использовать Android API. Решение похоже на объект MediaRecorder, поэтому я попытался использовать его с этим кодом.

var Form1: TForm1; RecorderObj: Jobject; Recorder: JMediaRecorder; procedure TForm1.FormCreate(Sender: TObject); begin Recorder:= MediaRecorder; // <------- The problem is here. Recorder.setAudioSource(1); // should set the recording device to the mic end; procedure TForm1.Timer1Timer(Sender: TObject); begin Label1.Text:= IntToStr(Recorder.getMaxAmplitude); end; 

Мне кажется, что этот код не работает, потому что нет экземпляра объекта. Тем не менее, Recorder: = новый MediaRecorder () (как хочет его android) не работает, и ни рекордер: = MediaRecorder.Create (как мне кажется, Delphi обычно хочет его). Если кто-нибудь знает, как получить экземпляр объекта Или знает более простой способ получить амплитуду звука от Delphi / RAD Studio, пожалуйста, дайте мне знать.

Чтобы создать экземпляр объекта класса Java в Delphi, в вашем случае экземпляр класса, реализующего интерфейс JMediaRecorder , используйте следующий код:

 Recorder := TJMediaRecorder.JavaClass.init;