相机符号不见android,求指导答,困扰已久:Android 调用相机返回的data空值问题

本人的代码是这样的:

package com.example.testcamera;

import java.io.File;

import android.net.Uri;

import android.os.Bundle;

import android.os.Environment;

import android.provider.MediaStore;

import android.app.Activity;

import android.content.Intent;

import android.graphics.Bitmap;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.ImageView;

import com.example.testcamera.R;

public class MainActivity extends Activity {

private static final int RESULT_CAPTURE_IMAGE = 1;

String fileName = Environment.getExternalStorageDirectory() + “/taxi51/download” + File.separator + “myHeader.jpg”;

ImageView image = null;

Uri photoUri = null;

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

image = (ImageView) findViewById(R.id.img_persion);

image.setOnClickListener(new OnClickListener(){

public void onClick(View v)

{

Intent imageCaptureIntent = new Intent(“android.media.action.IMAGE_CAPTURE”);

imageCaptureIntent.putExtra(MediaStore.Images.Media.ORIENTATION, 0);

imageCaptureIntent.putExtra(MediaStore.EXTRA_OUTPUT,

Uri.fromFile(new File(fileName)));

startActivityForResult(imageCaptureIntent, Activity.DEFAULT_KEYS_DIALER);

}

});

}

@Override

protected void onActivityResult(int requestCode, int resultCode, Intent data) {

super.onActivityResult(requestCode, resultCode, data);

switch (requestCode) {

case RESULT_CAPTURE_IMAGE:

if (resultCode == -1) {

if(data.getExtras() == null)

{

System.out.println(“data空的”);

}else

{

System.out.println(“data不是空的”);

}

Bundle bundle = data.getExtras();

Bitmap bitmap = (Bitmap) bundle.get(“data”);

image.setImageBitmap(bitmap);

}

break;

}

}

}

现在出现的错误代码如下:

03-19 10:03:48.946: W/dalvikvm(4845): threadid=1: thread exiting with uncaught exception (group=0x41876498)

03-19 10:03:48.956: E/AndroidRuntime(4845): FATAL EXCEPTION: main

03-19 10:03:48.956: E/AndroidRuntime(4845): java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=1, result=-1, data=null} to activity {com.example.testcamera/com.example.testcamera.MainActivity}: java.lang.NullPointerException

03-19 10:03:48.956: E/AndroidRuntime(4845):  at android.app.ActivityThread.deliverResults(ActivityThread.java:3162)

03-19 10:03:48.956: E/AndroidRuntime(4845):  at android.app.ActivityThread.handleSendResult(ActivityThread.java:3205)

03-19 10:03:48.956: E/AndroidRuntime(4845):  at android.app.ActivityThread.access$1100(ActivityThread.java:136)

03-19 10:03:48.956: E/AndroidRuntime(4845):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1249)

03-19 10:03:48.956: E/AndroidRuntime(4845):  at android.os.Handler.dispatchMessage(Handler.java:99)

03-19 10:03:48.956: E/AndroidRuntime(4845):  at android.os.Looper.loop(Looper.java:137)

03-19 10:03:48.956: E/AndroidRuntime(4845):  at android.app.ActivityThread.main(ActivityThread.java:4881)

03-19 10:03:48.956: E/AndroidRuntime(4845):  at java.lang.reflect.Method.invokeNative(Native Method)

03-19 10:03:48.956: E/AndroidRuntime(4845):  at java.lang.reflect.Method.invoke(Method.java:511)

03-19 10:03:48.956: E/AndroidRuntime(4845):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:804)

03-19 10:03:48.956: E/AndroidRuntime(4845):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:571)

03-19 10:03:48.956: E/AndroidRuntime(4845):  at dalvik.system.NativeStart.main(Native Method)

03-19 10:03:48.956: E/AndroidRuntime(4845): Caused by: java.lang.NullPointerException

03-19 10:03:48.956: E/AndroidRuntime(4845):  at com.example.testcamera.MainActivity.onActivityResult(MainActivity.java:61)

03-19 10:03:48.956: E/AndroidRuntime(4845):  at android.app.Activity.dispatchActivityResult(Activity.java:5274)

03-19 10:03:48.956: E/AndroidRuntime(4845):  at android.app.ActivityThread.deliverResults(ActivityThread.java:3158)

03-19 10:03:48.956: E/AndroidRuntime(4845):  … 11 more

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值