まず、デバッグに Samsung Galaxy Tab 2 を使用しています。Samsung の問題については知っていますcam-intent
。のデータ インテントに関する一般的な問題のようOnActivityResult
です。しかし、私のものは別のもののようです。
ローカライズできNullReferenceException
ないエラーが発生しました。しかし、コードを見てみましょう (これは一部です)。
protected override void OnActivityResult(int requestCode, Result resultCode, Intent data)
{
System.Console.WriteLine("---------------Reached OnActivityResult");
base.OnActivityResult(requestCode, resultCode, data);
var pic = new Picture();
if (requestCode == 0 && resultCode == Result.Ok)
{
if (requestCode == 0)
{
if (data != null)
{
Uri imageUri = null;
// Check if the result includes a thumbnail Bitmap
var mediaScanIntent = new Intent(Intent.ActionMediaScannerScanFile);
var contentUri = Android.Net.Uri.FromFile(_file);
mediaScanIntent.SetData(contentUri);
this.SendBroadcast(mediaScanIntent);
var bitmap = MediaStore.Images.Media.GetBitmap(ContentResolver, contentUri);
var info = data.GetStringArrayExtra("PictureInfo");
pic = new Picture(info[0], int.Parse(info[2]), info[1],
Core.Helpers.ConversionHelper.GetStringFromImage(bitmap));
}
else
{
ContentResolver cr = ContentResolver;
String[] p1 = new String[] {
MediaStore.Images.ImageColumns.Id,
MediaStore.Images.ImageColumns.DateTaken
};
ICursor c1 = cr.Query(MediaStore.Images.Media.ExternalContentUri, p1, null, null, p1[1] + " DESC");
if (c1.MoveToFirst())
{
String uristringpic = "content://media/external/images/media/" + c1.GetInt(0);
Android.Net.Uri newuri = Android.Net.Uri.Parse(uristringpic);
Log.Info("TAG", "newuri " + newuri);
var bitmap = MediaStore.Images.Media.GetBitmap(ContentResolver, newuri);
pic = new Picture(_picture.DocumentNo, _picture.LineNo, _picture.ItemNo, Core.Helpers.ConversionHelper.GetStringFromImage(bitmap));
}
c1.Close();
}
}
}
このコードを実行すると、System.Console
出力と出力が得られLog.Info
ます。だから私はそれがこの行まで実行されることを知っていますLog.Info("TAG", "newuri " + newuri);
アイデア?私は感謝されます。:-/
LogCat メッセージ:
09-06 13:30:11.910: E/mono(17434): Android.App.Activity.n_OnActivityResult_IILandroid_content_Intent_ (IntPtr jnienv, IntPtr native__this, Int32 requestCode, Int32 native_resultCode, IntPtr native_data) [0x00013] で /Users/builder/data /lanes/monodroid-mac-monodroid-4.2.4-branch/9f7cbd60/source/monodroid/src/Mono.Android/platforms/android-12/src/generated/Android.App.Activity.cs:1557