i use ActivityResultLaucher to get result of take picture in Fragment Dialog.
ActivityResultLauncher<Intent> takePicture = registerForActivityResult(
new ActivityResultContracts.StartActivityForResult(),
new ActivityResultCallback<ActivityResult>() {
@Override
public void onActivityResult(ActivityResult result) {
if (result.getResultCode() == Activity.RESULT_OK && result.getData()!=null) {
Intent intent = result.getData();
String test = intent.getData().toString();
}
}
});
then i call it if permission accepted
private void permit_camera() {
PermissionListener permissionlistener = new PermissionListener() {
@Override
public void onPermissionGranted() {
Intent intent_take_picture = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
takePicture.launch(intent_take_picture);
}
@Override
public void onPermissionDenied(List<String> deniedPermissions) {
Toast.makeText(requireContext(), "Permission Denied\n" + deniedPermissions.toString(), Toast.LENGTH_SHORT).show();
}
};
TedPermission.with(requireContext())
.setPermissionListener(permissionlistener)
.setDeniedMessage("")
.setPermissions(Manifest.permission.CAMERA)
.check();
}
but it seem return null
E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.yolo.hopel, PID: 15418
java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=2009242438, result=-1, data=Intent { act=inline-data flg=0x1 (has extras) }} to activity {com.yolo.hopel/com.yolo.hopel.Activities.MainActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String android.net.Uri.toString()' on a null object reference
at android.app.ActivityThread.deliverResults(ActivityThread.java:5143)
at android.app.ActivityThread.handleSendResult(ActivityThread.java:5184)
at android.app.servertransaction.ActivityResultItem.execute(ActivityResultItem.java:51)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2175)
at android.os.Handler.dispatchMessage(Handler.java:107)
at android.os.Looper.loop(Looper.java:237)
at android.app.ActivityThread.main(ActivityThread.java:7860)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1075)
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String android.net.Uri.toString()' on a null object reference
at com.yolo.hopel.Fragments.DiaLogProFileFragment.DialogProfile$11.onActivityResult(DialogProfile.java:333)
at com.yolo.hopel.Fragments.DiaLogProFileFragment.DialogProfile$11.onActivityResult(DialogProfile.java:329)
at androidx.activity.result.ActivityResultRegistry.doDispatch(ActivityResultRegistry.java:392)
at androidx.activity.result.ActivityResultRegistry.dispatchResult(ActivityResultRegistry.java:351)
at androidx.activity.ComponentActivity.onActivityResult(ComponentActivity.java:647)
at androidx.fragment.app.FragmentActivity.onActivityResult(FragmentActivity.java:164)
at android.app.Activity.dispatchActivityResult(Activity.java:8292)
at android.app.ActivityThread.deliverResults(ActivityThread.java:5136)
at android.app.ActivityThread.handleSendResult(ActivityThread.java:5184)
at android.app.servertransaction.ActivityResultItem.execute(ActivityResultItem.java:51)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2175)
at android.os.Handler.dispatchMessage(Handler.java:107)
at android.os.Looper.loop(Looper.java:237)
at android.app.ActivityThread.main(ActivityThread.java:7860)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1075)
why this error occur and how can i fix it? please help me! sorry , i must type something to text enough have a nice day, everyone!