Xamarin Android:将数据发送到外部活动并从结果中检索它们

问题描述:

我试图用某些参数调用相机,以及一些额外的数据,我的活动需要处理返回的照片, 我使用此代码:Xamarin Android:将数据发送到外部活动并从结果中检索它们

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); 

我现在想,当结果回来

是有办法做到这一点,以检索发送到活动的ID?我试图

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

,但我似乎无法检索结果

作为一种变通方法,我设法通过做以上选择保存结果代码或文件名中的ID,但我更喜欢找到另一种方式,是否有一个?

如果你发现代码怪异,它是写在Xamarin的Android,但它仍然是一个Android的问题提前任何帮助

感谢你能提供

你不能做到这一点。相机是外部应用程序,不会收集您的“额外信息”。

此处了解详情:AndroidDeveloer - Camera API

所以你的情况,你应该你的ID存储到一个全局变量或SharedPreferences