Hans' 2017 talk at googleio about managing native memory does not touch on global reference use but shows that JNI can be wonky.
https://developer.android.com/training/articles/perf-jni says:
The global reference is guaranteed to be valid until you call DeleteGlobalRef.
Do you have any experience in Android when this does not hold true?