Search Issue Tracker
Fixed in 5.6.0
Votes
2
Found in
5.3.6p6
Issue ID
839005
Regression
No
AndroidJavaObject.Call<>() throws exception instead of returning null pointer
Reproduction steps:
1. Open the attached project ("839005 - ReproProject.zip")
2. Build and run on Android device
3. Check device logcat
Actual result: "Exception: JNI: Init'd AndroidJavaObject with null ptr!" is thrown
Expected result: "Exception: JNI: Init'd AndroidJavaObject with null ptr!" shouldn't be thrown
Reproduced on:
5.2.3p3, 5.3.7p4, 5.4.4p3, 5.5.1p4, 5.6.0b9
DUT:
Meizu MX5 with Android 5.0.1
Samsung Galaxy S7 (SM-G930F) with Android 6.0.1
Fixed in: 2017.1.0a5
Backported to: 5.6.0p3, 5.5.3p3
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Object reflection missing on a Planar Reflection Probe when rotating the camera to certain angles with the Realtime Raytracing quality setting enabled
- HDRP water exclusion shader doesn't work with BRG
- Crash on GraphicsStateCollection::KeywordsFromShaderAndKeywordNames when calling GraphicsStateCollection.GetVariants()
- Editor crash when saving Currently Tracked Variants to Asset
- Physics.PhysX errors are thrown when undoing transform changes on prefab with Mesh Collider and Rigidbody components
vitaliy-zasadnyy
Feb 21, 2017 10:42
Exceptions are not the best for flow control. From my point of view it's better to return AndroidJavaObject that satisfies conditions:
public static bool IsJavaNull(this AndroidJavaObject ajo)
{
return ajo == null || ajo.GetRawObject().ToInt32() == 0;
}