Get uri von der Kamera intents in android

klicken Sie auf

 takePic.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View arg0) {
                Intent m_intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
                imageUri = getImageUri();
                m_intent.putExtra(MediaStore.EXTRA_OUTPUT, imageUri);
                startActivityForResult(m_intent, REQUEST_IMAGE_CAPTURE);
            }
        });

Auf Das Ergebnis:

 protected void onActivityResult(int requestCode, int resultCode, Intent data) {
            super.onActivityResult(requestCode, resultCode, data);
    if (requestCode == REQUEST_IMAGE_CAPTURE
                    && resultCode == RESULT_OK) {   

                Log.d("test1",""+imageUri);
                Intent shareIntent = new Intent(this, SharePicForm.class);
                shareIntent.putExtra("photo",""+imageUri);
                startActivity(shareIntent);
            }

        }

getImageUri()

private Uri getImageUri(){
        Uri m_imgUri = null;
        File m_file;
        try {
            SimpleDateFormat m_sdf = new SimpleDateFormat("yyyyMMdd_HHmmss");
            m_curentDateandTime = m_sdf.format(new Date());
            m_imagePath = Environment.getExternalStorageDirectory().getAbsolutePath() + File.separator + m_curentDateandTime + ".jpg";
            m_file = new File(m_imagePath);
            m_imgUri = Uri.fromFile(m_file);
        } catch (Exception p_e) {
        }
        return m_imgUri;
    }

Was ich erreichen möchte ist sehr einfach, rufen Sie Kamera auf Vorsatz und Holen Sie sich die uri des Ergebnisses Foto. Aber es scheint, gibt es eine inkonsistente des anderen Geräts und auf mein Gerät, es ist nicht an allen arbeiten. Ich habe versucht zu speichern, der Weg auf einer öffentlichen Variablen, aber wenn ich es abrufen , ist es null, gibt es formale und standard-Weg, um es zu implementieren und sollte die Arbeit auf alle Geräte? Auch, gibt es eine Möglichkeit für nicht die benutzerdefinierten Pfad aber bekommen die Standard-uri-Pfad von der Kamera-Vorsatz ?

Danke für die Hilfe

  • verwenden onSavedInstance() und onRestoreInstanceState() zu speichern und wieder zu den Bildpfad.
InformationsquelleAutor user782104 | 2014-01-27
Schreibe einen Kommentar