[Android TransactionTooLargeException选择图片库

问题描述 投票:0回答:1

我已经使用Xamarin构建了一个Android应用程序,该应用程序包含允许用户选择图像的功能。在某些设备中它可以工作,但在其他设备中,它抛出以下异常:

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

它显示选择器,当我选择“图像库”时,会引发异常。

在Google上搜索时,我发现一些帖子,人们建议检查两次活动之间传递的图像的尺寸,但在这种情况下,图像会在选择图像之前崩溃。

有人可以帮我吗?

提前感谢

android xamarin image-gallery startactivityforresult
1个回答
0
投票

我自己解决了问题。在Google上搜索时,我发现了一些建议在活动中管理OnSaveInstanceState事件的帖子,以保存捆绑包。当用户选择“图库”时,将调用此事件。

以下是事件代码:

protected override void OnSaveInstanceState(Bundle outState)
    {
        base.OnSaveInstanceState(outState);

        if (outState != null)
            outState.Clear();
    }

希望这对以后的人有所帮助。

© www.soinside.com 2019 - 2024. All rights reserved.