Выбор существующего изображения из галереи Android, данные о намерениях NULL на Samsung S7

Приложение My Xamarin позволяет пользователю взять новое или выбрать существующее изображение.

Он отлично работает практически на всех устройствах, но я получаю отчеты об ошибках от пользователей Samsung Galaxy S7, и кажется, что данные намерения являются нулевыми после того, как эти пользователи выбирают существующее изображение из своей галереи.

Вот как я настроил намерение:

var intent = new Intent();
intent = new Intent(Intent.ActionGetContent);
intent.SetType("image/*");

try
{
    Xamarin.Forms.Forms.Context.PackageManager.GetPackageInfo("com.android.gallery", 0);
    intent.SetPackage("com.android.gallery");
}
catch { }

this.StartActivityForResult(Intent.CreateChooser(intent, "Select Picture"), SELECT_FILE);

А вот как я получаю Uri в OnActivityResult после выбора изображения:

public override void OnActivityResult(int requestCode, Result resultCode, Intent data)
{
    base.OnActivityResult(requestCode, resultCode, data);
    ContentResolver resolver = this.Activity.ContentResolver;

    if (resultCode == Result.Ok && requestCode == SELECT_FILE)
    {
        ImageUri = data.Data;
    }
}

Поэтому я схожу с ума, пытаясь понять, почему data.Data имеет значение NULL только на нескольких избранных устройствах, а именно на Samsung Galaxy S7.

0 ответов

Другие вопросы по тегам