Domanda

Così sto cercando di avviare l'attività fotocamera utilizzando il seguente codice:

//In public void captureImage()
...
Intent cameraIntent = new Intent(MediaStore.ACTION_CAPTURE_IMAGE);
cameraIntent.putExtra(MediaStore.EXTRA_OUTPUT,
                      Uri.fromFile(new File("/sdcard/image.jpg")));
startActivityForResult(cameraIntent, REQUEST_CAMERA);

E poi a gestire il risultato:

//In onActivityResult()
...
case REQUEST_CAMERA:
  Intent intent = new Intent (CurrentScreen.this, NextScreen.this);
  intent.putExtra(data);
  startActivity(intent);
  CurrentScreen.this.finish();
...

Dove io uso intent.putExtra(data) per collegare il piccolo bitmap per l'intento, e usarlo come una miniatura nell'attività successiva, e il file di dimensioni complete è presumibilmente salvato come /sdcard/image.jpg.

Questo è il comportamento previsto (in base alla documentazione), per avere un piccolo bitmap per una miniatura, e un grande file salvato. Tuttavia quando si verifica questo su un G1 e un Eris, mi è stato vedere uno strano comportamento.

Al G1:

  • Anche se gli spettacoli resultCode RESULT_OK, i dati sulle intenzioni che viene restituito al gestore risultato è nullo.
  • Anche EXTRA_OUTPUT sembra essere completamente ignorato, non ho idea di dove si sta salvando l'immagine.

Al Eris:

  • I dati intento ritorna OK
  • EXTRA_OUTPUT è anche ignorato, ma è salvare immagini a media store regolare a /sdcard/dcim/100media

Quindi la mia domanda è questa: esiste un modo per ottenere un comportamento coerente per quello che sto cercando di fare con l'attività della macchina fotografica di serie? Potrei scrivere su un'attività personalizzata per cercare di farlo funzionare nel modo desiderato, ma io preferirei evitare questa strada.

È stato utile?

Soluzione

Non ho risposte alla tua domanda come io sono nuovo al mondo di sviluppo Java / Android. Ma io sto cercando qualcosa di simile a quello che stai facendo, tranne che voglio prendere semplicemente l'immagine, quindi allegarlo a un messaggio e-mail.

I implementata parte del vostro esempio e ha potuto verificare che la fotocamera ha creato il file specificato e che se uso lo stesso nome del file per l'immagine successiva che sovrascrive il file precedente che è quello che mi sarei aspettato.

Ma quello che mi ha davvero intenzione di dire è forse dovrà prova se il pat "/ sdcard / ..." in realtà esiste o meno. Inoltre si potrebbe semplificare il processo di passando il percorso per l'attività successiva.

Buona fortuna,

Jamie Irwin

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top