而不是覆盖当前onActivityResult
的覆盖/钩子,而是产生一个新线程。在这个新线程中,我想给它一个onActivityResult
监听器,这可能吗?
我尝试在此处使用替代解决方案 - Intents and onActivityResult in native/JNI
答案 0 :(得分:1)
onActivityResult
,您可以通过意图startActivityForResult
启动活动。如果您已经创建了自己的线程,我会做的是拥有自己的侦听器,然后在方法onActivityResult
中,您可以调用您的侦听器,而另一个线程中的功能可以知道它何时发生。
所以:
public class MyActivity extends Activity {
public void startActivity(View v) {
Intent intent = new Intent();
intent.startActivityForResult(intent, 1);
}
public void onActivityResult(int requestCode, int resultCode, Intent data) {
// call method in other thread
}
}
如果你正在处理JNI,你在C中调用一个方法,你可以简单地调用本机方法,它将在C中被选中