求教,Android程序出现空指针如何解决?

功能更新用户头像,
封装PhotoPop和ChangeImgActivity,在pop中startActivityForResult传递的Intent为空。

PhotoPop中的ChangeImgActivity为传参传过来的,
            ((ChangeImgActivity)context).startActivityForResult(
                    openCameraIntent, 1);// 采用ForResult打开
            break;

            ChangeImgActivity中的
 @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {

        switch (requestCode) {
        case 1:
  • 程序报错:

1.还没开始时出来一个,文件找不到错误,
10-13 16:45:56.939: E/BitmapFactory(24249): Unable to decode stream: java.io.FileNotFoundException: /storage/sdcard0/.com.yapot.pop/.image/1444725956933.jpghead.jpg: open failed: ENOENT (No such file or directory)

2.传递的Intent为空指针
10-13 16:46:02.965: E/AndroidRuntime(24249): java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=1, result=-1, data=null} to activity {com.yapot.pop/com.yapot.activity.MainActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'android.net.Uri android.content.Intent.getData()' on a null object reference

先检查 : java.io.FileNotFoundException: /storage/sdcard0/.com.yapot.pop/.image/1444725956933.jpghead.jpg 这个路径,看上去很怪。

不是空指针,是文件不存在 FileNotFoundException

ava.io.FileNotFoundException: 文件没找到,所以异常

可能是图片没有存入指定的路径,你可以检查一下是否存在图片保存的路径