Domanda

1) Se provo a passare dati extra a Intent a un'altra attività come questa:

Intent intent = new Intent(mContext, NoteActivity.class);
intent.putExtra(LIFE_ENTRY_NOTE, mEntry.getNote());
intent.putExtra(LIFE_ENTRY_ID, mEntry.get_ID());

Quindi funziona bene e sono in grado di leggerlo tramite data.getExtras().getString(CubbieButton.LIFE_ENTRY_NOTE)

2) Ma se creo un intento come questo:

Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
intent.putExtra(LIFE_ENTRY_ID, mEntry.get_ID());

NON sono in grado di leggerlo tramite data.getExtras().getString(CubbieButton.LIFE_ENTRY_NOTE)

Tutte le letture vengono eseguite in onActivityResult(int requestCode, int resultCode, Intent data)

C'è qualche limitazione che non sono in grado di trasportare dati con Intent creato tramite MediaStore.ACTION_IMAGE_CAPTURE?

Grazie

È stato utile?

Soluzione

Quando viene chiamato onActivityResult, "data" è probabilmente un nuovo intento creato dall'attività che hai chiamato.Dal momento che hai chiamato la videocamera per avviarla, non conosce i tuoi valori LIFE_ENTRY e molto probabilmente li ignora.A differenza della tua classe NoteActivity che sai come gestire quei valori e puoi salvarli / passarli di nuovo all'attività chiamante.

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