2017-03-16 3 views
0

Ich versuche, die Kamera mit bestimmten Argumenten zusammen mit einigen zusätzlichen Daten meine Aktivität benötigt, um das zurückgegebene Foto zu verarbeiten, Ich habe diesen Code verwendet:Xamarin Android: Senden von Daten an eine externe Aktivität und Abrufen von ihnen aus dem Ergebnis

Intent intent = new Intent(MediaStore.ActionImageCapture); 
Java.IO.File file = new Java.IO.File(System.IO.Path.Combine(App.DatabaseFolder, ATTACHMENT_FILE)); 
intent.PutExtra(MediaStore.ExtraOutput, Android.Net.Uri.FromFile(file)); 
intent.PutExtra(MediaStore.ExtraScreenOrientation, (int)ScreenOrientation.Portrait); 
intent.PutExtra("source_id", id); // here I put the extra data 
StartActivityForResult(intent, CAMERA_INTENT_REQUEST); 

jetzt versuche ich, die ID auf die Aktivität gesendet abzurufen, wenn das Ergebnis zurück

kommt, ist es eine Möglichkeit, das zu tun? Ich habe versucht,

if (requestCode = CAMERA_INTENT_REQUEST && resultCode == Result.Ok) { 
    data.GetIntExtra("source_id", -1); 
} 

aber ich kann nicht scheinen, das Ergebnis

als Behelfslösung abrufen konnte ich durch die oben genannten tun entweder die Id im Ergebniscode oder die Dateinamen zu speichern, aber ich bevorzuge einen anderen Weg finden, gibt es einen?

Im Fall finden Sie den Code seltsam, es in Xamarin Android geschrieben wird, aber es ist immer noch ein Androide Frage

Vielen Dank im Voraus für jede Hilfe Sie

Antwort

1

Sie bieten kann, kann das nicht tun. Die Kamera ist eine externe Anwendung und sammelt keine zusätzlichen Informationen.

Mehr Infos hier: AndroidDeveloer - Camera API

Also in Ihrem Fall, dass Sie Ihre ID in eine globale Variable speichern soll oder SharedPreferences

Verwandte Themen