Еще есть OpenIntents — список интентов, которые поддерживают сторонние приложения. Проект перестал обновляться, но все еще представляет некоторый интерес: www.openintents.org/en/intentstable
Рекомендую вместо названия IntentUtils ипсользовать Intents, если ещё не поздно =). Так проще и понятнее (такой подход используется, например, в Guava). Если отдаёте библиотеку в открытый доступ — не плохо бы покрыть её тестами (там чуть-чуть же).
В целом, молодец, спасибо.
1. Хотя бы то, что параметры intent'а выставлены корректно
2. Что невалидные данные не приводят к крешу (NPE)
3. Robolectric'ом можно проверить запускаемость активитей
Библиотека состоит из одного класса, последняя версия весит 6.797 кб, плюс ProGuard должен обрезать не используемые методы. Так что конечный вес — не больше веса кода, который вы бы написали самостоятельно, без использования либы.
Не нужно вообще никаких пермишенов. Данный интент открывает стандартный диалог написания смс с заполненными полями. Чтобы смс ушло пользователь должен дополнительно нажать кнопку «Send». Пользователь может отредактировать текст или отменить отправку смс.
Да, вы правы кроппинг доступен не везде. Но в принципе с любым из интентов не исключен такой вариант. На этот случай в библиотеке есть метод проверки, доступен ли интент в системе isIntentAvailable(Context context, Intent intent). Проверка возможности кроппинга немного отличается от стандартной, поэтому опять же предусмотрен метод isCropAvailable()
Может, знает кто…
Нельзя ли с помощью intent'ов (или ещё как) делать sign in / sign out в Hangouts?
Я бы хотел настроить это по расписанию в какой-нть Llama.
Android Intents Library