Skip to content

Commit

Permalink
Potential fix for IllegalStateException on Android
Browse files Browse the repository at this point in the history
  • Loading branch information
yasirkula committed Nov 14, 2023
1 parent 37ca85f commit 87a5735
Show file tree
Hide file tree
Showing 7 changed files with 9 additions and 9 deletions.
Expand Up @@ -42,7 +42,7 @@ public static void TakePicture( Context context, NativeCameraMediaReceiver media
final Fragment request = new NativeCameraPictureFragment( mediaReceiver );
request.setArguments( bundle );

( (Activity) context ).getFragmentManager().beginTransaction().add( 0, request ).commit();
( (Activity) context ).getFragmentManager().beginTransaction().add( 0, request ).commitAllowingStateLoss();
}

public static void RecordVideo( Context context, NativeCameraMediaReceiver mediaReceiver, int defaultCamera, int quality, int maxDuration, long maxSize )
Expand All @@ -60,7 +60,7 @@ public static void RecordVideo( Context context, NativeCameraMediaReceiver media
final Fragment request = new NativeCameraVideoFragment( mediaReceiver );
request.setArguments( bundle );

( (Activity) context ).getFragmentManager().beginTransaction().add( 0, request ).commit();
( (Activity) context ).getFragmentManager().beginTransaction().add( 0, request ).commitAllowingStateLoss();
}

// Credit: https://stackoverflow.com/a/35456817/2373034
Expand Down Expand Up @@ -121,7 +121,7 @@ public static void RequestPermission( Context context, final NativeCameraPermiss
final Fragment request = new NativeCameraPermissionFragment( permissionReceiver );
request.setArguments( bundle );

( (Activity) context ).getFragmentManager().beginTransaction().add( 0, request ).commit();
( (Activity) context ).getFragmentManager().beginTransaction().add( 0, request ).commitAllowingStateLoss();
}

public static String LoadImageAtPath( Context context, String path, final String temporaryFilePath, final int maxSize )
Expand Down
Expand Up @@ -90,7 +90,7 @@ public void onRequestPermissionsResult( int requestCode, String[] permissions, i
{
Log.e( "Unity", "Fragment data got reset while asking permissions!" );

getFragmentManager().beginTransaction().remove( this ).commit();
getFragmentManager().beginTransaction().remove( this ).commitAllowingStateLoss();
return;
}

Expand Down Expand Up @@ -118,7 +118,7 @@ public void onRequestPermissionsResult( int requestCode, String[] permissions, i
}

permissionReceiver.OnPermissionResult( result );
getFragmentManager().beginTransaction().remove( this ).commit();
getFragmentManager().beginTransaction().remove( this ).commitAllowingStateLoss();

// Resolves a bug in Unity 2019 where the calling activity
// doesn't resume automatically after the fragment finishes
Expand Down
Expand Up @@ -210,6 +210,6 @@ public void onActivityResult( int requestCode, int resultCode, Intent data )
if( mediaReceiver != null )
mediaReceiver.OnMediaReceived( result != null && result.length() > 1L ? result.getAbsolutePath() : "" );

getFragmentManager().beginTransaction().remove( this ).commit();
getFragmentManager().beginTransaction().remove( this ).commitAllowingStateLoss();
}
}
Expand Up @@ -250,6 +250,6 @@ public void onActivityResult( int requestCode, int resultCode, Intent data )
if( mediaReceiver != null )
mediaReceiver.OnMediaReceived( result != null && result.length() > 1L ? result.getAbsolutePath() : "" );

getFragmentManager().beginTransaction().remove( this ).commit();
getFragmentManager().beginTransaction().remove( this ).commitAllowingStateLoss();
}
}
Binary file modified Plugins/NativeCamera/Android/NativeCamera.aar
Binary file not shown.
2 changes: 1 addition & 1 deletion Plugins/NativeCamera/README.txt
@@ -1,4 +1,4 @@
= Native Camera for Android & iOS (v1.4.1) =
= Native Camera for Android & iOS (v1.4.2) =

Documentation: https://github.com/yasirkula/UnityNativeCamera
FAQ: https://github.com/yasirkula/UnityNativeCamera#faq
Expand Down
2 changes: 1 addition & 1 deletion package.json
@@ -1,7 +1,7 @@
{
"name": "com.yasirkula.nativecamera",
"displayName": "Native Camera",
"version": "1.4.1",
"version": "1.4.2",
"documentationUrl": "https://github.com/yasirkula/UnityNativeCamera",
"changelogUrl": "https://github.com/yasirkula/UnityNativeCamera/releases",
"licensesUrl": "https://github.com/yasirkula/UnityNativeCamera/blob/master/LICENSE.txt",
Expand Down

0 comments on commit 87a5735

Please sign in to comment.