草庐IT

handlerVisibility

全部标签

java - 从 JNI 代码中阻止对话框

我正在编写一个基本上是250KJNI包装器的应用程序。JNI(一个游戏引擎)有像handle_penUp(intx,inty)这样的API。有时它需要从handle_penUp()内部查询用户(通过回调到Java代码),所以我用来实现查询的对话框必须阻塞。我明白执行的主线程不能阻塞。因此,我生成了第二个线程,该线程进行所有可能导致需要阻塞的回调的JNI调用。在第二个线程中,当我需要建立一个阻塞对话框时,我调用startActivityForResult(),然后在信号量上调用acquire()。当在主线程上调用onActivityResult()时,它会在同一个信号量上调用releas