Android MediaStore API для tra sh изображения - PullRequest
0 голосов
/ 27 января 2020

Мое приложение - это органайзер фотографий, снятых с помощью стандартного приложения камеры. Я хочу, чтобы он отправлял фотографии в "tra sh", чтобы впоследствии их можно было восстановить из tra sh в приложении фотографий по умолчанию.

Полное удаление изображений показано на примере в документации API: https://developer.android.com/training/data-storage/shared/media#remove -item , но это немедленно удаляет изображение и не отправляет его на тра sh.

Это выглядит как краткий 1-месячный период в начале В 2019 году в MediaStore был метод tra sh, но он устарел через месяц после: https://github.com/aosp-mirror/platform_frameworks_base/blame/2d330f6fa8bc0888a27bf1729844be8b0fe71c8b/core/java/android/provider/MediaStore.java#L843

Какой API вы используете для отправки фотографии, сделанной с помощью приложения камеры to tra sh?

Редактировать: Вот скриншот, чтобы уточнить, что я имею в виду под "tra sh".

what I mean by

Ответы [ 2 ]

1 голос
/ 04 февраля 2020

Нет такого API. Каждое приложение имеет собственную реализацию tra sh can, вы не можете с ней взаимодействовать.

UPD: tra sh API добавлен в android R. Предварительный просмотр. См. https://developer.android.com/reference/android/provider/MediaStore#createTrashRequest (android .content.ContentResolver,% 20 java .util.Collection% 3 Candroid. net .Uri% 3E,% 20boolean)

0 голосов
/ 27 января 2020

Tra sh или Untra sh файл или папка

Типичный рабочий процесс для tra sh или Untra sh ресурса выглядит следующим образом:

  • Запрос метаданных ресурса.
  • Проверьте, является ли isTrashable истинным.
  • (Необязательно) Проверьте, является ли isTrashed истинным. Вызов tra sh для уже загруженного ресурса не имеет никакого эффекта.
  • Вызовите DriveResourceClient.tra sh или DriveResourceClient.untra sh, в зависимости от ситуации

    if (!metadata.isTrashable()) {
    showMessage(R.string.trashable_error);
    return;}
    
    DriveResource driveResource = metadata.getDriveId().asDriveResource();
    Task<Void> toggleTrashTask;
    if (metadata.isTrashed()) {
        toggleTrashTask = mDriveResourceClient.untrash(driveResource);
    } else {
        toggleTrashTask = mDriveResourceClient.trash(driveResource);
    }
    

Вы можете перейти по ссылке ниже для деталей -

tra sh и Untra sh

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...