У меня есть приложение для галереи, которое обрабатывает больше форматов изображений, чем Android. Я хотел бы добавить опцию share, которая позволит пользователю передавать любые выбранные изображения в формате jpeg. Я бы предпочел использовать ShareActionProvider, так как он прекрасно сочетается с пользовательским интерфейсом.ShareActionProvider с фоновой обработкой
В этом проблема. Для вывода jpegs требуется фоновый процесс, который преобразует изображения. Я не могу просто конвертировать каждый раз, когда пользователь добавляет выбор, поскольку он будет болото приложение, и они могут не захотеть поделиться в конце. Насколько я видел, нет способа перехватить ShareProvider после нажатия на действие. В этот момент кажется, что он должен быть заполнен любыми необходимыми URI.
Кто-нибудь придумал способ обработки необходимой фоновой обработки перед выполнением ShareActionProvider?
Я истощенные много идей:
- onShareTargetSelected (ShareActionProvider, Intent), но это не позволяет какой-либо модификации намерения, даже не сверток URI.
- пользовательское намерение, которое запускает AsyncTask, а затем намерение общего доступа, но которое не может получить доступ к выбранному пользователем обработчику.
На данный момент я уверен, что мне нужно будет реализовать классический элемент действия с помощью выбора общего ресурса, но я хотел бы посмотреть, есть ли у кого-нибудь разумное решение. Спасибо, парни!
Ха-ха, отличная идея. Я попробую это через пару дней и обновить результаты. Если это сработает, это будет намного лучше. – Anthony
Пришло время найти время. Вы знаете, как легко отложить функциональный взлом. После довольно небольшой настройки я получил работу ContentProvider, и это было значительно превосходное решение. – Anthony