Java 在我的应用程序中,摄影机活动引发空点异常

Java 在我的应用程序中,摄影机活动引发空点异常,java,android,Java,Android,相机活动单独在我的应用程序中产生问题如果我单击相机按钮,拍照后,相机活动停止 imageView = (ImageView)findViewById(R.id.imageview01); startBtn = (Button) findViewById(R.id.startBtn); startBtn.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { try {

相机活动单独在我的应用程序中产生问题如果我单击相机按钮,拍照后,相机活动停止

 imageView = (ImageView)findViewById(R.id.imageview01);
 startBtn = (Button) findViewById(R.id.startBtn);
 startBtn.setOnClickListener(new View.OnClickListener() {
    public void onClick(View v) {
        try {
            startCamera();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
});
 public void startCamera() 
      throws IOException {
  Log.d("TDM_CAMERA", "Starting camera on the phone...");
  File photosDir = new File(Environment.getExternalStorageDirectory(), "photos");
  if (!photosDir.isDirectory()) {
      photosDir.mkdirs();
  }
  File imageFile = File.createTempFile("testphoto", ".jpg", photosDir);
  Intent intent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
  intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(imageFile));
  intent.putExtra(MediaStore.EXTRA_VIDEO_QUALITY, 1);
  startActivityForResult(intent, 1337);
}
现在logcat会抛出空点异常单击相机按钮时,它会在我的应用程序因空点异常而突然停止后拍照

02-21 04:13:18.672: E/AndroidRuntime(1456): FATAL EXCEPTION: main
02-21 04:13:18.672: E/AndroidRuntime(1456): java.lang.RuntimeException: Unable to instantiate application android.app.Application: java.lang.NullPointerException
02-21 04:13:18.672: E/AndroidRuntime(1456):     at android.app.LoadedApk.makeApplication(LoadedApk.java:504)
02-21 04:13:18.672: E/AndroidRuntime(1456):     at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4364)
02-21 04:13:18.672: E/AndroidRuntime(1456):     at android.app.ActivityThread.access$1300(ActivityThread.java:141)
02-21 04:13:18.672: E/AndroidRuntime(1456):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1294)
02-21 04:13:18.672: E/AndroidRuntime(1456):     at android.os.Handler.dispatchMessage(Handler.java:99)
02-21 04:13:18.672: E/AndroidRuntime(1456):     at android.os.Looper.loop(Looper.java:137)
02-21 04:13:18.672: E/AndroidRuntime(1456):     at android.app.ActivityThread.main(ActivityThread.java:5039)
02-21 04:13:18.672: E/AndroidRuntime(1456):     at java.lang.reflect.Method.invokeNative(Native Method)
02-21 04:13:18.672: E/AndroidRuntime(1456):     at java.lang.reflect.Method.invoke(Method.java:511)
02-21 04:13:18.672: E/AndroidRuntime(1456):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
02-21 04:13:18.672: E/AndroidRuntime(1456):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
02-21 04:13:18.672: E/AndroidRuntime(1456):     at dalvik.system.NativeStart.main(Native Method)
02-21 04:13:18.672: E/AndroidRuntime(1456): Caused by: java.lang.NullPointerException
02-21 04:13:18.672: E/AndroidRuntime(1456):     at android.app.LoadedApk.initializeJavaContextClassLoader(LoadedApk.java:379)
02-21 04:13:18.672: E/AndroidRuntime(1456):     at android.app.LoadedApk.getClassLoader(LoadedApk.java:322)
02-21 04:13:18.672: E/AndroidRuntime(1456):     at android.app.LoadedApk.makeApplication(LoadedApk.java:496)
02-21 04:13:18.672: E/AndroidRuntime(1456):     ... 11 more
现在,
LogCat
显示我的活动抛出空点异常,这会使我的应用程序崩溃 这是我的活动结果

if (requestCode == IMAGE_CAPTURE) {
      if (resultCode == RESULT_OK){
          Log.d("ANDRO_CAMERA","Picture taken!!!");
          imageView.setImageURI(imageUri);
      }
  }

通过如下声明requestcode进行如下尝试:

您可以按如下方式向其提供id:

并将其用作:


如果您至少花了几秒钟的时间处理此错误,您会注意到这与您的代码无关。

请将onActivityResult方法发布到(requestCode==IMAGE\u CAPTURE)…其中IMAGE\u CAPTURE=1337??你初始化imageView了吗?没有,伙计,我已经声明为私有静态最终int IMAGE_CAPTURE=0;你能发布更多的活动代码吗?这样我才能更好地了解你的错误。
startActivityForResult(intent, IMAGE_CAPTURE);
 private static final IMAGE_CAPTURE=1337;
startActivityForResult(intent, IMAGE_CAPTURE);