Android TransactionTooLargeException 选择图片库
Android TransactionTooLargeException selecting image gallery
我用 Xamarin 构建了一个 Android 应用程序,其中包含允许用户 select 图像的功能。
在某些设备中它可以工作,但在其他设备中它会出现以下异常:
java.lang.RuntimeException: android.os.TransactionTooLargeException
这是我的代码。
var intent = new Intent(Intent.ActionPick, MediaStore.Images.Media.ExternalContentUri);
intent.SetType("image/*");
StartActivityForResult(Intent.CreateChooser(intent, Resources.GetString(Resource.String.selectImage)), SELECT_FILE);
它显示选择器,当我选择 "Image Gallery" 时抛出异常。
在 google 上搜索,我发现一些帖子中有人建议检查两个活动之间传递的图像的尺寸,但在这种情况下,它会在图像的 selection 之前崩溃。
谁能帮帮我?
提前致谢
在 google 上搜索,我发现一些帖子建议在 activity 上管理 OnSaveInstanceState 事件以保存包。
当用户选择“图片库”时调用此事件。
事件代码如下:
protected override void OnSaveInstanceState(Bundle outState)
{
base.OnSaveInstanceState(outState);
if (outState != null)
outState.Clear();
}
我用 Xamarin 构建了一个 Android 应用程序,其中包含允许用户 select 图像的功能。 在某些设备中它可以工作,但在其他设备中它会出现以下异常:
java.lang.RuntimeException: android.os.TransactionTooLargeException
这是我的代码。
var intent = new Intent(Intent.ActionPick, MediaStore.Images.Media.ExternalContentUri);
intent.SetType("image/*");
StartActivityForResult(Intent.CreateChooser(intent, Resources.GetString(Resource.String.selectImage)), SELECT_FILE);
它显示选择器,当我选择 "Image Gallery" 时抛出异常。
在 google 上搜索,我发现一些帖子中有人建议检查两个活动之间传递的图像的尺寸,但在这种情况下,它会在图像的 selection 之前崩溃。
谁能帮帮我?
提前致谢
在 google 上搜索,我发现一些帖子建议在 activity 上管理 OnSaveInstanceState 事件以保存包。 当用户选择“图片库”时调用此事件。
事件代码如下:
protected override void OnSaveInstanceState(Bundle outState)
{
base.OnSaveInstanceState(outState);
if (outState != null)
outState.Clear();
}