Делитесь текстом через намерение с учетными записями приложений

#android #android-intent #share

#Android #android-intent #Поделиться

Вопрос:

Обновление AndroidManifest.xml с помощью

<activity android:name=".ui.MyActivity" >
<intent-filter>
<action android:name="android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="text/plain" />
</intent-filter>
</activity>

добавьте приложение в список общего доступа, например, для данных типа текста. Но как я могу добавить опцию выбора разных учетных записей из моего приложения для совместного использования? например :введите описание изображения здесь

Ответ №1:

Это называется «прямой доступ«, добавленный в Android 6.0. Основные шаги:

  • Создайте подкласс ChooserTargetService

  • В методе onGetChooserTargets() этого класса верните список ChooserTarget объектов, представляющих конкретные учетные записи / теги / все, что вы хотите, чтобы разрешить пользователю делиться

  • Добавьте службу в свой манифест с android:permission="android.permission.BIND_CHOOSER_TARGET_SERVICE" и ChooserTargetService <intent-filter>

  • Добавьте meta-data к своей ACTION_SEND активности <intent-filter> , указав на свой ChooserTargetService

Затем, когда пользователь делает что-то, что вызывает ACTION_SEND , где ваша активность является кандидатом, устройство Android 6.0 также покажет ваши цели прямого обмена.

Этот пример приложения демонстрирует подход.

Комментарии:

1. Спасибо вам за вашу помощь.

2. @IntelliJAmiya мне пришлось подождать не менее 5 минут, чтобы принять