我对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 micend;procedure TForm1.Timer1Timer(Sender: TObject);begin Label1.Text:= IntToStr(Recorder.getMaxAmplitude);end;
它在我看来这个代码不起作用,因为没有对象的实例.但是,Recorder:= new MediaRecorder()(androID想要它的方式)不起作用,Recorder:= MediaRecorder.Create(我认为Delphi通常想要它的方式)如果有人知道如何获取对象的实例或者知道从Delphi / RAD Studio获取音频振幅的更简单方法,请告诉我.
@H_404_10@解决方法:要在Delphi中创建java类对象实例,在您的情况下是实现JMediaRecorder接口的类的实例,请使用以下代码:
Recorder := TJMediaRecorder.JavaClass.init;
总结 以上是内存溢出为你收集整理的如何使用JNI(Delphi)实例化java对象全部内容,希望文章能够帮你解决如何使用JNI(Delphi)实例化java对象所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)