我有一个使用NativeActivity的应用程序。我想调用Java来做一些需要Context的事情(例如,访问TelephonyManager来查询IMEI)。
如何为我的活动获得有效的上下文?
ANativeActivity结构包含我的应用程序的各种有用数据,例如JavaVM和JNI环境等。它还包含指向NativeActivity的类对象的jobject。它不包含的是指向NativeActivity的实例的jobject。我在struct android_app
中看不到任何有用的东西。
必须有可能这样做;任何想法如何?
答案 0 :(得分:4)
尽管名称为clazz
结构的ANativeActivity
成员实际上指向android.app.NativeActivity
实例。
检查this post以获取使用从Native Activity到Java代码的JNI调用的示例。