Android: Camera nu răspunde la butonul "OK" atunci când încearcă să salveze imaginea

Sunt nou la Android și încerc să fac o parte din codul meu pentru a salva imaginea luată de aplicația mea care folosește camera foto Android. Vreau ca imaginea să fie afișată într-o altă activitate odată ce am părăsit camera. Chiar acum, dacă nu-l salvez, imaginea este afișată odată ce modul de cameră este oprit. Dar dacă încerc să o salvez, camera nu va ieși deloc și butonul "OK" nu răspunde. Încerc să construiesc o aplicație care face fotografii și o atașează pe e-mail și o trimite împreună cu datele de localizare GPS. Ca urmare, partea "trimitere-mesaj" a casetei de comutare este din acest motiv.

    public void onClick(View v) {

   //TODO Auto-generated method stub
    switch (v.getId()) {

    case R.id.Picture:
        File file = new File(Environment.getExternalStorageDirectory().getPath() + "/My Images/" + "bhe_app" + ".jpg");
        Uri imageUri = Uri.fromFile(file);

        i = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
        i.putExtra(MediaStore.EXTRA_OUTPUT, imageUri);

        startActivityForResult(i, cameraData);

        break;

    case R.id.SendMessage:  //Sending message part 

        EditTextToString();

        EmailIntent = new Intent(android.content.Intent.ACTION_SEND);

        EmailIntent.putExtra(Intent.EXTRA_EMAIL,
                new String[] { "[email protected]" });
        EmailIntent.putExtra(android.content.Intent.EXTRA_TEXT,
                MessageToBeReceived);
        EmailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, "@"+Lattitude_data +"," +Longitude_data);

       //EmailIntent.setType("message/rfc822");
        EmailIntent.setType("image/jpeg");
       //EmailIntent.putExtra(Intent.EXTRA_STREAM, fileUri);

        startActivity(Intent.createChooser(EmailIntent,
                "Choose an Email client :"));
        break;

    }

}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
   //TODO Auto-generated method stub
    super.onActivityResult(requestCode, resultCode, data);
    if (resultCode == RESULT_OK) {
        Bundle extras = data.getExtras();
        bmp = (Bitmap) extras.get("data");
        iv.setImageBitmap(bmp);
        //iv is an image view in an activity where I display the image taken.
    //bmp is defined as being Bitmap.
   // final static int cameraData =0


    }
} 
0

1 răspunsuri

Ați uitat să creați directorul pe care îl scrieți. Adăugați această linie înainte de a crea obiect de fișier.

File path = new File(Environment.getExternalStorageDirectory().getPath() + "/My Images/").
path.mkdirs();
0
adăugat
Android dezvoltatori, România — Moldova
Android dezvoltatori, România — Moldova
27 participanți

Parteneri: ciupacabra.com, @php_ro, @js_ro, @node_ro iOS: @ro_ios Reguli: https://github.com/js-ro/it-telegram/blob/master/RULES.md