Android 将通过自定义照相机拍摄的照片从一个活动发送到另一个活动

Android 将通过自定义照相机拍摄的照片从一个活动发送到另一个活动,android,Android,我有以下代码,但我不知道它是否正确,在应用程序中它崩溃并在Logcat中显示NullPointer异常:Bundle extras=intent.getExtras() 以下是打开摄像头的代码: public class AddImage extends Fragment { Button button; View view; private static final int REQUEST_CODE_FROM_CAMERA = 100; private Uri fileUri; String

我有以下代码,但我不知道它是否正确,在应用程序中它崩溃并在Logcat中显示NullPointer异常:Bundle extras=intent.getExtras()

以下是打开摄像头的代码:

public class AddImage extends Fragment {

Button button;
View view;
private static final int REQUEST_CODE_FROM_CAMERA = 100;
private Uri fileUri;
String image_path = "";
Button button1;




@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
                         Bundle savedInstanceState) {
    // Inflate the layout for this fragment
    view =  inflater.inflate(R.layout.fragment_add_image, container, false);
    button = (Button)view.findViewById(R.id.addImage);
    button1 = (Button)view.findViewById(R.id.goImage);
    button1.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            Intent iSecond=new Intent(getActivity(),ShowImage.class);
            iSecond.putExtra("image_path",image_path);
            startActivity(iSecond);
        }
    });

    button.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            Toast.makeText(getActivity(),"Launching Camera",Toast.LENGTH_SHORT).show();

            Intent imageIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
            File imagesFolder = new File(Environment.getExternalStorageDirectory(), "MyImages");
            imagesFolder.mkdirs(); // <----
            File image = new File(imagesFolder, "image_001.jpg");
            Uri uriSavedImage = Uri.fromFile(image);
            imageIntent.putExtra(MediaStore.EXTRA_OUTPUT, uriSavedImage);
            startActivityForResult(imageIntent, 0);


        }
    });
    return view;
}






@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
    if (requestCode == REQUEST_CODE_FROM_CAMERA
            && resultCode == Activity.RESULT_OK) {
        try {


            image_path = fileUri.getPath();



        } catch (NullPointerException e) {
            e.printStackTrace();
        }

    }
}







public interface OnFragmentInteractionListener {
    // TODO: Update argument type and name
    public void onFragmentInteraction(Uri uri);
}

}
}

Bundle extras=intent.getExtras()处出现NullPointer异常; 有人能帮我吗

还有,在接收活动中如何在GridView中显示捕获的图像

这里

Bundle extras = intent.getExtras();
发生空指针异常是因为
intent
null

将意图初始化为:

intent= getIntent();

在调用
getExtras

之前,请确保在清单中声明了外部存储读写权限

和变化

Bundle extras=intent.getExtras()

对,


Bundle extras=getIntent().getExtras()

change
startActivityForResult(imageIntent,0)
startActivityForResult(图像意图,从摄像头请求代码)

为什么一遍又一遍地问同一个问题是的,我已经问过了,但新活动中没有图像,你能告诉我在拍摄过程中哪里出了问题吗class@bappibazzi:u在
image\u路径
String中得到的值是什么?@bappibazi:同时更改
Uri uriSavedImage=Uri.fromFile(图像)
to
fileUri=Uri.fromFile(图像)mParcellData.dataSize=44@bappibazzi:同时更改Uri uriSavedImage=Uri.fromFile(图像);to fileUri=Uri.fromFile(图像);我知道了,但是拍摄的图像没有出现在第二个活动中,你能看一下相机的意图代码,请告诉我哪里出错了@bappi bazzi。我在你的代码帖子中看到startActivityForResult(imageIntent,0)你能帮我吗!若你们并没有像上面那个样改变它,那个么图像路径将是“”,你们将无法得到任何东西。同样要检索,请使用getIntent().getStringExtra(图像路径)还有什么我可以做的吗!
intent= getIntent();