для setAction() Следует ли использовать Intent.ACTION_SEND и Intent.ACTION_SEND_MULTIPLE?
Это ваш выбор, как автор приложения. Если вы ожидаете поделиться один фрагмент текста (который вы собрали из многих частей самостоятельно), используйте ACTION_SEND
. Если вы ожидаете поделиться многими фрагментами текста, используйте ACTION_SEND_MULTIPLE
.
Обратите внимание, что я ожидал бы около 100: 1 приложений, поддерживающих ACTION_SEND
, по сравнению с ACTION_SEND_MULTIPLE
. Итак, если ваша цель состоит в том, чтобы это совместное использование было в целом полезным, вы хотели бы ориентироваться на ACTION_SEND
.
Что еще более важно, вам необходимо определить, что хотят сделать пользователей. Предположительно, точка, лежащая в основе вашего развития, - это использование людьми 1+ людей. Если пользователь приложения ожидает отправить одно сообщение или напишите один твит или загрузите один примечание на основе этих данных, вы должны использовать ACTION_SEND
. Если вместо этого пользователь будет ожидать отправки сообщений N (или что-то еще), то это было бы что-то попробовать с ACTION_SEND_MULTIPLE
.
При настройке содержимого следует использовать putExtra или putParcelableArrayListExtra?
Для ACTION_SEND
, было бы putExtra()
, проходя в String
. Для ACTION_SEND_MULTIPLE
это будет putStringArrayListExtra()
.
ли я установить Intent с данными из ListFragment, или из ArrayAdapter, или из ArrayList, который подается в ArrayAdapter, или из данных перед ArrayList были построены?
Вы используете String
или ArrayList<String>
, как указано выше.Где вы получаете эти значения от вашей бизнес-логики, что вы как разработчик необходимо решить.
Но мой «ArrayAdapter» заселен «ArrayList», а не ArrayList '. Тем не менее, я не могу использовать 'ArrayList' в' ACTION_SEND'? Должен ли я проходить через ArrayList с циклом for и строить «StringBuilder», который я кормлю 'putExtra'? –
Fred
«ListFragment» - это список, содержащий * несколько текстовых записей. Я хочу отправить весь список (состоящий из * нескольких * текстовых записей). Должен ли я использовать 'ACTION_SEND' или' ACTION_SEND_MULTIPLE'? – Fred
@Fred: Вы утверждаете, что пытаетесь отправить текст/plain. * Вам нужно собрать «String» (s) для отправки, потому что * вы * единственные, кто знает, как должны выглядеть эти «String» (s). «Должен ли я использовать ACTION_SEND или ACTION_SEND_MULTIPLE?» - пожалуйста, перечитайте первые три абзаца моего ответа. Ваш тип MIME является «text/plain». Если вы отправляете один «String» или «N», зависит от ваших бизнес-правил. – CommonsWare