[英]How can I listen for events in my activity waiting for a computation to finish?
我有一个主要活动需要监听音频流的计算结果。 这是主要活动
private void setSoundProcessListener() {
SoundProcess object = new SoundProcess(music_stream1, music_stream2);
object.setSoundProcessListener(new SoundProcessListener.SoundProcessListener() {
@Override
public void onDataLoaded(String data) {
// I want this to get called every time I complete processing a piece of sound
do something...
}
});
}
如何创建一个异步调用另一个函数的 SoundProcess 类,以便每次成功处理来自流的一段声音(某些分析函数)时,我都能获得该计算的结果?
声音处理器类:
public SoundProcess(music_stream1, music_stream2) {
process sound.... on complete return the resulting data to the main activity listener aand continue processing more sound from the streams
}
创建一个具有函数的接口,该函数将成为您活动中的回调函数。 在您的活动中实现该接口..
在您的 SoundProcess 类中,
声明一个成员变量:
SPInterface ac ;//SPInterface is name of the interface.
在 SoundProcessor 类中的函数内部,您将在其中了解声音处理将完成,写:
ac = (MainActivity)activity
ac.fun1()
//fun1() 是您将在您的活动中拥有的接口的功能,以使您的活动通知处理已完成。您必须在您的 soundProcessor 类中有对活动对象的引用。不要将其声明为成员变量否则可能会导致潜在的内存泄漏。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.