#android #nullpointerexception #android-camera-intent #onactivityresult
#Android #исключение nullpointerexception #android-camera-intent #onactivityresult
Вопрос:
Я создал простое приложение для Android, в котором я хочу захватить изображение и хочу установить его в imageview, но это дает мне исключение нулевого указателя внутри onActivityResult, мой logcattrace и код, как показано ниже: code
public void onClick(DialogInterface dialog, int item) {
if (options[item].equals("Take Photo"))
{
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
File f = new File(android.os.Environment.getExternalStorageDirectory(), "temp.jpg");
intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(f));
startActivityForResult(intent, 1);
}
...
public void onActivityResult(int requestCode, int resultCode, Intent data) {
if (resultCode == RESULT_OK) {
if (requestCode == SELECT_PICTURE) {
Uri selectedImageUri = data.getData();
if (Build.VERSION.SDK_INT < 19) {
Log.i("Your version Build.VERSION.SDK_INT < 19","if condition");//<19
selectedImagePath = getPath(selectedImageUri);
bitmap_selected_image2 = BitmapFactory.decodeFile(selectedImagePath);
v_iv_photo_main.setImageBitmap(bitmap_selected_image2);
// finish();
// startActivity(new Intent(SelectPhotoCountryActivity.this,SetPhotoFrameActivity.class));
}
logcat
06-16 14:34:15.564: E/AndroidRuntime(31301): FATAL EXCEPTION: main
06-16 14:34:15.564: E/AndroidRuntime(31301): java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=1, result=-1, data=null} to activity {com.example.footballapp/com.example.footballapp.SelectPhotoCountryActivity}: java.lang.NullPointerException
06-16 14:34:15.564: E/AndroidRuntime(31301): at android.app.ActivityThread.deliverResults(ActivityThread.java:3518)
06-16 14:34:15.564: E/AndroidRuntime(31301): at android.app.ActivityThread.handleSendResult(ActivityThread.java:3561)
06-16 14:34:15.564: E/AndroidRuntime(31301): at android.app.ActivityThread.access$1200(ActivityThread.java:168)
06-16 14:34:15.564: E/AndroidRuntime(31301): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1377)
06-16 14:34:15.564: E/AndroidRuntime(31301): at android.os.Handler.dispatchMessage(Handler.java:99)
06-16 14:34:15.564: E/AndroidRuntime(31301): at android.os.Looper.loop(Looper.java:176)
06-16 14:34:15.564: E/AndroidRuntime(31301): at android.app.ActivityThread.main(ActivityThread.java:5493)
06-16 14:34:15.564: E/AndroidRuntime(31301): at java.lang.reflect.Method.invokeNative(Native Method)
06-16 14:34:15.564: E/AndroidRuntime(31301): at java.lang.reflect.Method.invoke(Method.java:525)
06-16 14:34:15.564: E/AndroidRuntime(31301): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1225)
06-16 14:34:15.564: E/AndroidRuntime(31301): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1041)
06-16 14:34:15.564: E/AndroidRuntime(31301): at dalvik.system.NativeStart.main(Native Method)
06-16 14:34:15.564: E/AndroidRuntime(31301): Caused by: java.lang.NullPointerException
06-16 14:34:15.564: E/AndroidRuntime(31301): at com.example.footballapp.SelectPhotoCountryActivity.onActivityResult(SelectPhotoCountryActivity.java:281)
06-16 14:34:15.564: E/AndroidRuntime(31301): at android.app.Activity.dispatchActivityResult(Activity.java:5563)
06-16 14:34:15.564: E/AndroidRuntime(31301): at android.app.ActivityThread.deliverResults(ActivityThread.java:3514)
06-16 14:34:15.564: E/AndroidRuntime(31301): ... 11 more
Комментарии:
1. Где вы инициализировали свой v_iv_photo_main?
2. @Zoran-внутри метода oncreate