在 JNI 级别声明的全局变量(非静态)将存在多长时间?
How long does a global variable (nonstatic) declared in JNI-level will live?
示例 - 在我的 Android 应用程序中,在 JNI 层,我声明了如下内容:
int32_t my_glob_var;
这个变量能保证和进程一样长吗?因此,只要应用程序是 运行。或者有什么我不知道的注意事项吗?
只要加载 .so 文件,此变量就会存在,因此只要进程处于活动状态并且您的 类 已加载,它就会存在。如果你想让事情更持久,你需要挂钩生命周期事件并使用显式持久性库,如 SharedPreferences。
示例 - 在我的 Android 应用程序中,在 JNI 层,我声明了如下内容:
int32_t my_glob_var;
这个变量能保证和进程一样长吗?因此,只要应用程序是 运行。或者有什么我不知道的注意事项吗?
只要加载 .so 文件,此变量就会存在,因此只要进程处于活动状态并且您的 类 已加载,它就会存在。如果你想让事情更持久,你需要挂钩生命周期事件并使用显式持久性库,如 SharedPreferences。