Must have android tools

20 инструментов Android-разработчика, о которых вы могли не знать

Набор полезных, но не очень известных инструментов и библиотек Android.

Работая над статьями о 30 лучших библиотеках и проектах Android 2019 г. и 25 лучших библиотеках и проектах Android 2020 г., я наткнулся на множество замечательных инструментов и проектов, которые могут пригодиться в разработке приложений для Android — ниже они приведены в случайном порядке. Пользуйтесь.

1. AinD — Android (Anbox) в Докере

AinD запускает приложения Android, помещая контейнеры Anbox в Докер.

В отличие от аналогичных проектов на основе виртуальных машин, AinD может выполняться на экземплярах IaaS без поддержки вложенной виртуализации. Docker Hub: aind/aind .

Совместимость с Android (через облако) для планшетов на iOS и Windows

2. Booster

Booster — очень интересный инструмент: это простой в использовании, легкий, функциональный, расширяемый набор инструментов для повышения качества, предназначенный специально для мобильных приложений. Основная задача проекта — решать вопросы качества, связанные с повышением сложности приложения — например, проблемы производительностью, стабильностью и размером пакета.

Booster — это набор модулей для оценки производительности, оптимизации многопоточности, встроенного индекса ресурсов, сокращения числа избыточных ресурсов, сжатия ресурсов, исправления системных ошибок и т. д. Booster позволяет повысить стабильность приложения на 15–25% и снизить размер пакета на 1–10 МБ.

Документация очень хорошая, лицензия — Apache 2.0.

3. Shake

Shake — один из лучших инструментов для обнаружения ошибок, изучения действий пользователя для воспроизведения ошибки и сбора скриншотов или видео с ошибками. Благодаря ему работа с ошибками при бета-тестировании и в публичной версии сильно упрощается — инструмент определенно стоит того, чтобы попробовать.

Как показано на гифке выше, если встряхнуть устройство, появится запрос с шаблоном для отправки отчета об ошибке. Пользователь может пометить ошибку, замаскировать конфиденциальные данные, описать проблему и отправить вам отчет.

Устанавливается эта штука просто, в документации всё отлично описано. Кроме того, есть интерактивная демонстрация, которая показывает работу инструмента изнутри.

4. Scabbard

Scabbard помогает с визуализацией и анализом графика зависимостей Dagger 2.

Scabbard визуализирует точки входа, схемы зависимостей, взаимосвязи компонентов и области действия. Добавить этот инструмент в проект очень легко: он хорошо интегрирован с Gradle, а также с Android Studio и IntelliJ (нажав значок на левом поле в редакторе, можно просмотреть схему для @Component или @Subcomponent ).

Документирован проект отлично: есть множество примеров и подсказок.

Лицензия — Apache 2.0.

5. Can I Drop Jetifier?

Как известно, иногда перейти со старой библиотеки поддержки на AndroidX не так просто, особенно в крупных проектах с большим количеством устаревшего кода. Успех перехода во многом зависит от использования инструмента Jetifier (преобразует зависимости, которым для работы с классами AndroidX всё еще требуются старые артефакты), который замедляет сборку.

«Всё больше и больше библиотек переходят на AndroidX, поэтому в какой-то момент необходимость включать этот инструмент отпадает. Этот плагин определяет, какие из используемых библиотек нужно перенести на AndroidX — или избавиться от них, если уже вышла новая версия», — Can I Drop Jetifier?

Документация понятная, проект выпущен под лицензией Apache 2.0. Очень рекомендую!

Читайте также:  Viber совместимость с андроид

6. ADB Event Mirror

ADB Event Mirror позволяет отражать события касания экрана, нажатия клавиш и кнопок одного устройства на одно или несколько других устройств в реальном времени.

«Этот сценарий не адаптирует разрешение, плотность пикселей, ориентацию и макет приложения. Поэтому лучше всего он работает с эмуляторами, созданными с одинаковой конфигурацией», — ADB Event Mirror

Инструмент дает возможность протестировать приложение одновременно на эмуляторах различных типов.

7. Android Emulator Container Scripts

Android Emulator Container Scripts — набор небольших сценариев для запуска эмулятора в контейнере для различных систем (например, для Докера) с целью внешнего использования. Сценарии совместимы с Python версий 2 и 3. Этот репозиторий довольно популярен и пригодится, если нужно запускать много эмуляторов на удаленных машинах.

Проект выпущен под лицензией Apache 2.0 и хорошо документирован.

8. Autoplay

Autoplay — это плагин для Gradle, предназначенный для публикации артефактов Android в Google Play.

Его можно считать очень простой альтернативой Gradle Play Publisher или Fastlane. Опубликовать приложение можно как apk или набор App Bundle.

Оптимизирован для использования в CI/CD.

Удобен для разработчиков.

Надежен и перспективен.

У проекта хорошая документация, версия на момент написания статьи — 1.3.0 , лицензия — Apache 2.0.

9. Плагин Gradle для статического анализа

Плагин статического анализа Gradle — комплексная замена для всех значимых инструментов статического анализа кода, включает в себя следующее:

FindBugs [ПОДДЕРЖКА ПРЕКРАЩЕНА] [удален в Gradle 6.0]

Смысл в том, что вам не нужно будет настраивать все эти инструменты самостоятельно — их можно без особых усилий включить в свою кодовую базу. Плагин выпущен под лицензией Apache 2.0 и отлично документирован (есть даже пример проекта).

10. AndroidUtilCode

AndroidUtilCode — функциональная и простая в использовании библиотека для Android, которая инкапсулирует функции, обычно используемые при разработке Android с демонстрационными версиями и модульными тестами. Инкапсулированные API позволяют значительно повысить эффективность разработки.

Проект состоит в основном из двух модулей: utilcode (используется в разработке часто) и subutil (используется редко, но позволяет упростить основной модуль).

Версия проекта — 1.29.0 , лицензия — Apache 2.0.

11. Hijckr

«Hijckr вмешивается в инфляцию макета Android и перенаправляет названные элементы в другие классы».

Это довольно интересный инструмент. Например, если файл макета содержит TextView , Android обычно загружает android.widget.TextView , но вместо этого можно перехватить xml -теги и загрузить com.myapp.TextView .

Описание проекта довольно подробное и позволяет быстро начать работу с инструментом (который полностью написан на Java).

12. Roomigrant

Roomigrant — это вспомогательная библиотека для автоматической генерации миграций библиотеки Android Room с использованием формирования кода во время компиляции. Она использует созданные библиотекой Room файлы схемы и генерирует миграции на основе разницы между ними — то есть, создание схемы Room должно быть включено в файле build.gradle , что хорошо описано в README.

Проект выпущен под лицензией MIT, версия 0.1.7 .

13. RoomExplorer

После переноса базы данных на Room неплохо бы просмотреть ее: RoomExplorer позволяет просматривать все данные таблиц в табличном формате, удалять таблицы, вставлять, изменять и удалять строки и т. д.

Инструмент хорошо документирован, лицензия — Apache 2.0.

14. Android Framer

Инструмент android-framer добавляет рамки и заголовки к скриншотам в Google Play. Источник вдохновения — fastlane frameit.

Инструмент написан на Python и использует ImageMagick. Настроить рамки (фоны) можно, например, с помощью Facebook Design. Также можно менять шрифт, кегль, размер рамки и т. д.

Лицензия — Apache 2.0.

15. Dependency Tree Diff

Dependency Tree Diff — это «интеллектуальный инструмент сравнения для вывода задачи dependencies Gradle, который всегда показывает путь к корневой зависимости».

Можно установить инструмент через brew или просто использовать jar -файл.

Лицензия — Apache 2.0.

16. Gradle Doctor

Gradle Doctor — это плагин для сканирования сборки Gradle. Функциональность: настраиваемые предупреждения о проблемах со скоростью сборки, измерение временны́х затрат на инструменты обработки аннотаций Dagger, установка переменной JAVA_HOME и проверка ее соответствия JAVA_HOME в IDE, простое отключение кеширования тестов, остановка сборки в случае, если найдены пустые каталоги src (поскольку это может быть причиной несовпадений в кеше), и многое другое.

Читайте также:  Http source android com

У инструмента отличная документация, проект выпущен под лицензией Apache 2.0.

17. GloballyDynamic

GloballyDynamic — это «набор инструментов, направленных на обеспечение всеобщей доступности Dynamic Delivery, независимо от магазина приложений или платформы распространения, которые также предоставляют единый унифицированный клиентский API для Android и простой интерфейс для разработчиков».

Большинство других платформ — в сочетании с сервером GloballyDynamic (например, Amazon App Store, Samsung Galaxy Store, Firebase App Distribution или локальная разработка).

Рекомендую прочитать README и подробнее ознакомиться с этим инструментом.

Лицензия — Apache 2.0.

18. Dagger Browser

Dagger Browser — еще один инструмент (прогрессивное веб-приложение) для удобной навигации по схеме Dagger в проекте.

«Данные схемы заполняются с помощью SPI-плагина Dagger, а средство просмотра написано с помощью CRA (create-react-app) и TypeScript», — Dagger Browser

Есть и пример приложения, в котором показано, как инструмент работает. Всё это выпущено под трехпунктовой лицензией BSD.

19. Wormhole

Wormhole — «путешествующий во времени инструмент преобразования байт-кода, добавляющий в android.jar будущие API-интерфейсы, которые можно десахаризовать на все уровни API с помощью D8 и R8».

Wormhole обеспечивает обратную совместимость с более новыми API. Приведу пример.

«В Android R есть новые методы из Java 9 — например, List.of . Благодаря D8 и R8 они не являются эксклюзивными для API 30 и мгновенно превращаются в совместимые с API 1. В D8 и R8 есть набор методов десахаризации для API, которых еще нет в android.jar . И можно не ждать, пока они появятся — этот проект дает возможность использовать их сразу же».

20. MNML

MNML (произносится как «minimal» — «минимальный») — простое бесплатное приложение для записи экрана в Android.

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

Лицензия — Apache 2.0.

Заключение

Вот и всё. Надеюсь, список вам понравился и какие-то инструменты смогли вас вдохновить. До встречи!

О переводчике

Перевод статьи выполнен в Alconost.

Alconost занимается локализацией игр, приложений и сайтов на 70 языков. Переводчики-носители языка, лингвистическое тестирование, облачная платформа с API, непрерывная локализация, менеджеры проектов 24/7, любые форматы строковых ресурсов.

Мы также делаем рекламные и обучающие видеоролики — для сайтов, продающие, имиджевые, рекламные, обучающие, тизеры, эксплейнеры, трейлеры для Google Play и App Store.

Источник

Top Must-Have Android Developer Tools

Check out these helpful tools which provide useful functions for Android mobile app developers.

Join the DZone community and get the full member experience.

Excellent warriors need brilliant swords to fight. Similarly, in modern IT, every coder needs the best Android developer tools to enhance their skills and efficiency. In this cutthroat competitive industry, you can’t survive with just good developers. You need to show that you have the best technology and resources for the client.

It is not just about showing your gears to attract clients but also to make sure that your Android apps are being built of the utmost quality in a productive timeline. So which are the best Android developer tools? Well, there are tons of tools out there, but not all of them are good enough. Let’s have look at the best Android app development tools.

B4A

Chances are you have not heard about B4A (Basic for Android), an Android app development tool that simplifies programming. It is an IDE that helps developers create apps using the BASIC programming language. BASIC is a procedural programming language that is very simple to code with, as it uses almost regular English to write the code. B4A has some interesting features like debugging via wireless Bluetooth, a visual editor to arrange and manipulate app views as per your needs, and much more.

Читайте также:  Android intent action view не запускается

If you think that B4A is only for newbies who do not know much about Android app development, think again. You can do almost everything with B4A that you do with Java, and it’s faster than Java.

LeakCanary

LeakCanary helps point out mistakes made by the developer. In this way, it keeps the “leakage” of code in check. The aim while building this developer tool was to give the most comfortable GUI for developers. The tool is automated, so it notifies you whenever it encounters some problem. It gives the developer a full stack trace, giving instant fixes for memory leaks right away.

Fabric

This is a very useful Android developer tool to quickly develop, deploy, and extend your Android app’s functionality. A very stable and robust program, Fabric has helped a lot of Android app developers. Fabric gives developers an idea of user activities and where the users are most likely to engage with an app so that the development team can focus their efforts there. Also, as a developer, Fabric gives the opportunity to drive app installs and earn money from ad revenue.

AIDE

Android IDE (AIDE) is a unique entry in this list, as you can create Android apps using AIDE from your phone and tablets and also conduct tests on the same devices. AIDE supports programming languages like JavaScript, CSS, and HTML. If you have just begun your app development career, then you must learn how to use AIDE. It enables you to watch and learn from tutorials with highlighted code and test them in your mobile devices in real time. As a plus, you can also build websites using AIDE.

InstaBug

Do you hate bugs in your Android app? InstaBug hates them too. InstaBug has taken bug testing to a whole new level with amazing features like screenshot annotations, network logging, audio recording, and screen recording the tests and sending them to Android app developers for a detailed explanation. View a deconstructed model of the app in 3D to see how each subview looks. Many popular Android apps, like Yahoo, PayPal, Lyft, BuzzFeed, Dubsmash, Scribd, Kik, and many more, use InstaBug for their “bug hunting.”

Android Studio

We can’t end the list without including Android Studio. It is the granddaddy of all Android app development tools. Many developers consider it to be the best Android developer tool. It is also known as the official developer environment for Google’s Android operating system. It has a myriad of features, like visual layout, APK analyzer, intelligent code editor, fast emulator, flexible build system, and real-time profiler. It is like the Swiss army knife of Android developer tools.

Android Studio plays multiple roles in Android app development. It’s a compiler to create a file system to arrange your app project to create multiple APK files. It’s an editor for languages that developers use in app development. It includes the Android SDK itself.

Conclusion

For high-quality Android app development, you will need to have the best Android developer tools in your arsenal.

Источник

Оцените статью