- Регистрация
- 03.05.2016
- Сообщения
- 773
- Благодарностей
- 517
- Баллы
- 93
Всем привет, с вами Дмитрий!
Водная часть.
В данной статье я хотел бы рассказать свой путь, как я осваивал разработку под ZennoDroid. Что я узнал, с какими проблемами столкнулся и чему научился, а так же дать советы тем кто тоже хочет освоить ZennoDroid.
Я опытный разработчик ZennoPoster, у меня больше 8 лет стажа написания различных шаблонов. Есть свой YT и Telegram каналы. Есть достаточная база знаний CSharp, что позволяет мне без всяких проблем взаимодействовать с продуктами ZennoLab через С#. ZennoDroid я начал изучать буквально 3-4 месяца назад. Первые недели 2 у меня ушло просто на разбор и понимание, как тут все устроено и написание вспомогательного инструмента, что бы я мог легче контролировать, что происходит у меня на экране. Вспомогательный инструментарий я обновляю до сих пор .
Моя история.
Начинаем начинать.
Давным-давно, когда только вышел продукт ZennoDroid, я попытался с ним поработать, но тогда он был такой сырой, что мне даже не удалось запустить эмулятор. Если я ничего не путаю, то тогда он работал не на базе Memu, а на чем-то другом, очень ресурсоемком и мне даже не хватало мощностей моего ноутбука для нормальной работы. В общем первое знакомство прошло не очень удачно и желание работать с данным продуктом у меня отбило на годы, да и потребностей в автоматизации Android не было.
К ZennoDroid я не прикасался до текущего 2024 года, даже практически не вспоминал про него. Но в комьюнити все больше начали про него говорить, даже конкурсы с отдельными номинациями были и интерес к данному продукту постепенно рос. По итогу появилась задача, с которой ZennoDroid должен был справиться лучше, чем ZennoPoster. Это нагул поведенческих факторов через приложения. Во первых там слабее антифрод система, во вторых если мы работаем на реальных устройствах, мы супер лояльны для антифрода и как бонус на проксях можно хорошо сэкономить.
Возвращение к ZennoDorid.
Из-за того что в последние годы, я часто участвовал в конкурсах от Zennolab, со мной связались разработчики и предложили созвониться. На созвоне речь зашла про ZennoDroid и я сказал, что мне интересен данный продукт и я бы с удовольствием с ним поработал, на что мне разработчики выдали бесплатную лицензию ZennoDroid Pro на 3 месяца. Ну все, задачи есть, лицензия есть, желание есть, можно начинать.
Первые дни.
В первые дни, я решил закопаться в теории и прочитать все, до чего мог дотянуться. Но я допустил небольшую ошибку. Я знал, что есть 2 версии ZennoDroid, но я еще не знал, что они по разному работают и читал все подряд, что по итогу привело к каше в голове. Если вы только начинаете изучать ZennoDroid, то разделайте информацию, которая применима только к версии Pro\Lite и к Enterprise. Но было и открытие для меня, оказывается очень важно читать раздел Новости, топики по продукту ZennoDroid, по мимо того что вы будите в курсе всех обновлений, вы еще найдете полезные материалы в виде шаблонов и т.п. от разработчиков.
После штудирования информации и сохранения десятка закладок, знаний было достаточно, чтобы начинать создавать свои шаблоны. Первым шаблоном я решил создать регистратор Яндекс почты, для меня он был понятным и простым в реализации. Приступаю к написанию шаблона и сталкиваюсь с первыми трудностями, на некоторых страницах не отображаются нужные мне элементы, то есть на экране я вижу нужный элемент, а через инструменты и я не могу к нему обратиться. Оказывается в некоторых приложениях, на некоторых страницах могут не отображаться всплывающие попапы и iFrame. Привет первые костыли, решением было повторная перезагрузка страницы, иногда решением было открыть раздел вкладки и вернуться назад. И вот первый шаблон был написан, на его создание ушло пару дней, сейчас бы на это ушло пару часов.
Мои инсайды в ходе первой работы.
Так как у меня было достаточно опыта работы на CSharp, я понял что мне не хватает некоторых инструментов, которые я могу написать для себя, что поможет мне в дальнейшей разработке. Приведу пример, в ZennoDroid есть поиск элементов по xPath, но мы в основном ищем элементы по тексту и постоянно прописывать xPath в кубиках для поиска текста не очень удобно. Поэтому я реализовал свой метод поиска по тексту на базе метода поиска по xPath, он работает точно так же через xPath, только нам не нужно постоянно прописывать сам xPath, а достаточно передать текст в метод, что бы найти нужный элемент.
Так же понимание, что автоматизация Android работает через ADB команды. Позволяет нам внедрять в проект свои решения, которые есть в ADB и которых нет в ZennoDroid (не все методы adb, но очень много). А если вы думаете, а где мне взять эти команды, их очень много и они какие-то не понятные. То просто зарегистрируйтесь уже наконец-то в Chat-GPT.
JavaScript - наш лучший друг. Если вы работаете с браузером или с приложением, у которого есть WebView (тэг в дереве элементов XML). Поздравляю у вас есть бонус, третья рука. XML Androida хранит очень мало информации, а с помощью JS мы можем вытаскивать полный HTML, в которой гораздо больше нужной информации. JS это еще один дополнительный инструментарий который мы можем использовать в своей работе. И нам не нужно писать целые скрипты, нам достаточно одной строчки кода. Не знаешь JS? Я тоже не знаю, Chat-GPT и проблема закрыта.
Заключение.
Спустя 3-4 месяца работы я себя смело могу назвать разработчиком ZennoDroid. Есть достаточно знаний и понимания, как работает ZennoDroid, его плюсы и минусы. Да это далеко не идеальный продукт, у него слабый инструментарий по сравнению с тем же ZennoPoster, но опять таки это особенности Android автоматизации, а не разработчиков ZennoDroid.
Для новичков, кто хочет освоить ZennoDroid самостоятельно, я делюсь своим опытом ниже.
Приятного чтения!
Делюсь опытом.
Что выбрать ZennoDroid Pro\Lite (ZDP) или ZennoDroid Enterprise (ZDE).
Те кто не работал с ZennoDroid еще не знают что их 2 версии и они очень сильно отличаются в работе. И первое с чем вы столкнётесь, а что выбрать ZDP или ZDE. Выбор может показаться сложным, но на самом деле все зависит от задач, которые вы захотите решать с помощью данных инструментов.
Давайте я опишу своими словами основные отличия версий и их плюсы и минусы.
ZennoDroid Pro\Lite (ZDP) - работает на базе эмулятора Memu. Для старта работы достаточно установить эмулятор Memu и оплатить лицензию ZDP.
Плюсы:
- Легкая установка
- Затраты только на лицензию
- Быстро можем начать писать первые проекты
Минусы:
- Легко детектится антифрод системами
- Кушает много ресурсов железа
- Слабая подмена данных устройств
- Для подмены данных устройств нужно останавливать эмулятор
- Постоянный перезапуск эмуляторов, чтобы поменять устройство (самый ресурсоемкий процесс)
ZennoDroid Enterprise (ZDE) - работает через отладку по USB, реализован для реальных устройств, но за счет отладки по USB можем подключаться к другим эмуляторам. Перед оплатой лицензии у вас должно быть устройство (эмулятор \ реальное устройство) с установленным Magisk и LSPosed, подмена данных устройств производится через модуль LSPosed.
Плюсы:
- Лучше реализована подмена данных устройств
- Для подмены данных не нужно останавливать\перезагружать устройство
- За счет реального устройства легче обходить антифрод системы
- За счет интернета через симку, получаем собственный прокси по цене тарифа симкарты
- За счет реального устройства нагрузка на железо минимальное, можно запускать гораздо больше потоков
Минусы:
- Подготовка устройств перед работай (прошивки, установка Magisk, LSPosed)
- Затраты. По мимо лицензии, нужно будет покупать реальные трубки, если хотите проще обходить антифрод системы и экономить на прокси.
- Один поток, одна трубка. Потоки ограничиваются количеством реальных устройств
- Если работаем с эмуляторами, легко детектимся антифрод системами
Итог что выбрать:
Если вы хотите просто попробовать, что это за зверь ZennoDroid или автоматизировать не сложные проекты со слабыми антифрод системами выбираете ZDP. Например тапалки можно реализовать и через ZDP.
Если у вас серьезный проект, например регистрация Google почты, то тут выбираем ZDE на реальных устройствах. Но перед тем как покупать лицензию, подготовьте устройства к работе с ZDE.
Где искать информацию по ZennoDroid
ZennoLab Wiki - разработчики ZennoLab написали достаточно много полезной информации, чтобы разобраться с ZD и начать работать.
Форум | Раздел Новости - здесь читаем все новости касаемо ZennoDroid за последние пару лет. Это важно, вы будите в курсе всех нововведений, в некоторых темах есть очень полезные шаблоны примеры от самих разработчиков.
Форум | Ветка ZennoDroid - читаем все и вся, информации выходит не так много, это легче чем вам кажется. В начале стоит напрячься и прочитать все ветки и все посты, до 10-15 страниц. Все что кажется важным, выписывайте или делайте закладки, иначе забудете (проверено )
Пользователи на которых стоит обратить внимание: @Anatoly79 , @FreddyKrueger , @Sherminator , @t79
Это люди которые пишут много полезного по ZennoDroid, к ним стоит прислушиваться!
Как самому освоить ZennoDroid без покупки курсов
Важно, вы должны знать что ZennoDroid есть 2 версии, и они работают по разному, поэтому нужно разделять информацию под каждую из версий, чтобы не было каши в голове.
Первым делом, просто читаем всю информацию с Wiki, Новости, Ветка ZennoDroid. Главное делать закладки или выписывать отдельно информацию, которую считаете полезной, а не держать в голове, забудете 100%. На это дело уйдет примерно 3-4 дня по 2 часа в день, но за то вы получите хорошую базу и будите понимать, как тут все устроено. Если не будите делать закладки или пометки, а будите все держать в голове, то благополучно забудете важные моменты и получить кашу в голове, пишу 2 раза, потому что это важно!
Дальше, соберите шаблоны с проектами ZennoDroid (их не так много) и по разбирайте их. Посмотрите, как авторы реализуют те или иные задачи, какой логикой руководствуются. Это не так сложно, главное себя заставить. Шаблоны которые вам понравятся, возьмите себе на заметку, в первое время, будите часто к ним обращаться.
Начните писать свой первый проект, в начале конечно будет непонимание, с чего начать и как лучше решить задачу. Тут начинаем смотреть на шаблоны других разработчиков и свои закладки \ пометки. В течение пары недель новая информация усвоится и появится понимание как решать те или иные задачи.
От вашего умения структурировать информацию, будет зависть как быстро вы освоите ZennoDroid, он не такой сложный, как кажется, но имеет очень много своих особенностей, о которых узнаешь только на практике.
Спасибо, что дочитали до конца, надеюсь что вам понравилось и вы вдохновились на изучение ZennoDoroid.
Так же еще для новичков записал небольшой видео обзор интерфейса ZennoDroid.
#####################
Мой Телеграм Канал
Мой Youtube Канал
Поддержка автора: Донат
USDT TRC20: TBbnjJGwHEeKP5KEr7FNhsBmhR6V1XKds1
#####################
У кого проблемы с YouTube, продублировал видео в ВК
Водная часть.
Я опытный разработчик ZennoPoster, у меня больше 8 лет стажа написания различных шаблонов. Есть свой YT и Telegram каналы. Есть достаточная база знаний CSharp, что позволяет мне без всяких проблем взаимодействовать с продуктами ZennoLab через С#. ZennoDroid я начал изучать буквально 3-4 месяца назад. Первые недели 2 у меня ушло просто на разбор и понимание, как тут все устроено и написание вспомогательного инструмента, что бы я мог легче контролировать, что происходит у меня на экране. Вспомогательный инструментарий я обновляю до сих пор .
Моя история.
Начинаем начинать.
Давным-давно, когда только вышел продукт ZennoDroid, я попытался с ним поработать, но тогда он был такой сырой, что мне даже не удалось запустить эмулятор. Если я ничего не путаю, то тогда он работал не на базе Memu, а на чем-то другом, очень ресурсоемком и мне даже не хватало мощностей моего ноутбука для нормальной работы. В общем первое знакомство прошло не очень удачно и желание работать с данным продуктом у меня отбило на годы, да и потребностей в автоматизации Android не было.
К ZennoDroid я не прикасался до текущего 2024 года, даже практически не вспоминал про него. Но в комьюнити все больше начали про него говорить, даже конкурсы с отдельными номинациями были и интерес к данному продукту постепенно рос. По итогу появилась задача, с которой ZennoDroid должен был справиться лучше, чем ZennoPoster. Это нагул поведенческих факторов через приложения. Во первых там слабее антифрод система, во вторых если мы работаем на реальных устройствах, мы супер лояльны для антифрода и как бонус на проксях можно хорошо сэкономить.
Возвращение к ZennoDorid.
Из-за того что в последние годы, я часто участвовал в конкурсах от Zennolab, со мной связались разработчики и предложили созвониться. На созвоне речь зашла про ZennoDroid и я сказал, что мне интересен данный продукт и я бы с удовольствием с ним поработал, на что мне разработчики выдали бесплатную лицензию ZennoDroid Pro на 3 месяца. Ну все, задачи есть, лицензия есть, желание есть, можно начинать.
Первые дни.
В первые дни, я решил закопаться в теории и прочитать все, до чего мог дотянуться. Но я допустил небольшую ошибку. Я знал, что есть 2 версии ZennoDroid, но я еще не знал, что они по разному работают и читал все подряд, что по итогу привело к каше в голове. Если вы только начинаете изучать ZennoDroid, то разделайте информацию, которая применима только к версии Pro\Lite и к Enterprise. Но было и открытие для меня, оказывается очень важно читать раздел Новости, топики по продукту ZennoDroid, по мимо того что вы будите в курсе всех обновлений, вы еще найдете полезные материалы в виде шаблонов и т.п. от разработчиков.
После штудирования информации и сохранения десятка закладок, знаний было достаточно, чтобы начинать создавать свои шаблоны. Первым шаблоном я решил создать регистратор Яндекс почты, для меня он был понятным и простым в реализации. Приступаю к написанию шаблона и сталкиваюсь с первыми трудностями, на некоторых страницах не отображаются нужные мне элементы, то есть на экране я вижу нужный элемент, а через инструменты и я не могу к нему обратиться. Оказывается в некоторых приложениях, на некоторых страницах могут не отображаться всплывающие попапы и iFrame. Привет первые костыли, решением было повторная перезагрузка страницы, иногда решением было открыть раздел вкладки и вернуться назад. И вот первый шаблон был написан, на его создание ушло пару дней, сейчас бы на это ушло пару часов.
Мои инсайды в ходе первой работы.
Так как у меня было достаточно опыта работы на CSharp, я понял что мне не хватает некоторых инструментов, которые я могу написать для себя, что поможет мне в дальнейшей разработке. Приведу пример, в ZennoDroid есть поиск элементов по xPath, но мы в основном ищем элементы по тексту и постоянно прописывать xPath в кубиках для поиска текста не очень удобно. Поэтому я реализовал свой метод поиска по тексту на базе метода поиска по xPath, он работает точно так же через xPath, только нам не нужно постоянно прописывать сам xPath, а достаточно передать текст в метод, что бы найти нужный элемент.
Так же понимание, что автоматизация Android работает через ADB команды. Позволяет нам внедрять в проект свои решения, которые есть в ADB и которых нет в ZennoDroid (не все методы adb, но очень много). А если вы думаете, а где мне взять эти команды, их очень много и они какие-то не понятные. То просто зарегистрируйтесь уже наконец-то в Chat-GPT.
JavaScript - наш лучший друг. Если вы работаете с браузером или с приложением, у которого есть WebView (тэг в дереве элементов XML). Поздравляю у вас есть бонус, третья рука. XML Androida хранит очень мало информации, а с помощью JS мы можем вытаскивать полный HTML, в которой гораздо больше нужной информации. JS это еще один дополнительный инструментарий который мы можем использовать в своей работе. И нам не нужно писать целые скрипты, нам достаточно одной строчки кода. Не знаешь JS? Я тоже не знаю, Chat-GPT и проблема закрыта.
Заключение.
Спустя 3-4 месяца работы я себя смело могу назвать разработчиком ZennoDroid. Есть достаточно знаний и понимания, как работает ZennoDroid, его плюсы и минусы. Да это далеко не идеальный продукт, у него слабый инструментарий по сравнению с тем же ZennoPoster, но опять таки это особенности Android автоматизации, а не разработчиков ZennoDroid.
Для новичков, кто хочет освоить ZennoDroid самостоятельно, я делюсь своим опытом ниже.
Приятного чтения!
Делюсь опытом.
Те кто не работал с ZennoDroid еще не знают что их 2 версии и они очень сильно отличаются в работе. И первое с чем вы столкнётесь, а что выбрать ZDP или ZDE. Выбор может показаться сложным, но на самом деле все зависит от задач, которые вы захотите решать с помощью данных инструментов.
Давайте я опишу своими словами основные отличия версий и их плюсы и минусы.
ZennoDroid Pro\Lite (ZDP) - работает на базе эмулятора Memu. Для старта работы достаточно установить эмулятор Memu и оплатить лицензию ZDP.
Плюсы:
- Легкая установка
- Затраты только на лицензию
- Быстро можем начать писать первые проекты
Минусы:
- Легко детектится антифрод системами
- Кушает много ресурсов железа
- Слабая подмена данных устройств
- Для подмены данных устройств нужно останавливать эмулятор
- Постоянный перезапуск эмуляторов, чтобы поменять устройство (самый ресурсоемкий процесс)
ZennoDroid Enterprise (ZDE) - работает через отладку по USB, реализован для реальных устройств, но за счет отладки по USB можем подключаться к другим эмуляторам. Перед оплатой лицензии у вас должно быть устройство (эмулятор \ реальное устройство) с установленным Magisk и LSPosed, подмена данных устройств производится через модуль LSPosed.
Плюсы:
- Лучше реализована подмена данных устройств
- Для подмены данных не нужно останавливать\перезагружать устройство
- За счет реального устройства легче обходить антифрод системы
- За счет интернета через симку, получаем собственный прокси по цене тарифа симкарты
- За счет реального устройства нагрузка на железо минимальное, можно запускать гораздо больше потоков
Минусы:
- Подготовка устройств перед работай (прошивки, установка Magisk, LSPosed)
- Затраты. По мимо лицензии, нужно будет покупать реальные трубки, если хотите проще обходить антифрод системы и экономить на прокси.
- Один поток, одна трубка. Потоки ограничиваются количеством реальных устройств
- Если работаем с эмуляторами, легко детектимся антифрод системами
Итог что выбрать:
Если вы хотите просто попробовать, что это за зверь ZennoDroid или автоматизировать не сложные проекты со слабыми антифрод системами выбираете ZDP. Например тапалки можно реализовать и через ZDP.
Если у вас серьезный проект, например регистрация Google почты, то тут выбираем ZDE на реальных устройствах. Но перед тем как покупать лицензию, подготовьте устройства к работе с ZDE.
Где искать информацию по ZennoDroid
ZennoLab Wiki - разработчики ZennoLab написали достаточно много полезной информации, чтобы разобраться с ZD и начать работать.
Форум | Раздел Новости - здесь читаем все новости касаемо ZennoDroid за последние пару лет. Это важно, вы будите в курсе всех нововведений, в некоторых темах есть очень полезные шаблоны примеры от самих разработчиков.
Форум | Ветка ZennoDroid - читаем все и вся, информации выходит не так много, это легче чем вам кажется. В начале стоит напрячься и прочитать все ветки и все посты, до 10-15 страниц. Все что кажется важным, выписывайте или делайте закладки, иначе забудете (проверено )
Пользователи на которых стоит обратить внимание: @Anatoly79 , @FreddyKrueger , @Sherminator , @t79
Это люди которые пишут много полезного по ZennoDroid, к ним стоит прислушиваться!
Как самому освоить ZennoDroid без покупки курсов
Важно, вы должны знать что ZennoDroid есть 2 версии, и они работают по разному, поэтому нужно разделять информацию под каждую из версий, чтобы не было каши в голове.
Первым делом, просто читаем всю информацию с Wiki, Новости, Ветка ZennoDroid. Главное делать закладки или выписывать отдельно информацию, которую считаете полезной, а не держать в голове, забудете 100%. На это дело уйдет примерно 3-4 дня по 2 часа в день, но за то вы получите хорошую базу и будите понимать, как тут все устроено. Если не будите делать закладки или пометки, а будите все держать в голове, то благополучно забудете важные моменты и получить кашу в голове, пишу 2 раза, потому что это важно!
Дальше, соберите шаблоны с проектами ZennoDroid (их не так много) и по разбирайте их. Посмотрите, как авторы реализуют те или иные задачи, какой логикой руководствуются. Это не так сложно, главное себя заставить. Шаблоны которые вам понравятся, возьмите себе на заметку, в первое время, будите часто к ним обращаться.
Начните писать свой первый проект, в начале конечно будет непонимание, с чего начать и как лучше решить задачу. Тут начинаем смотреть на шаблоны других разработчиков и свои закладки \ пометки. В течение пары недель новая информация усвоится и появится понимание как решать те или иные задачи.
От вашего умения структурировать информацию, будет зависть как быстро вы освоите ZennoDroid, он не такой сложный, как кажется, но имеет очень много своих особенностей, о которых узнаешь только на практике.
Спасибо, что дочитали до конца, надеюсь что вам понравилось и вы вдохновились на изучение ZennoDoroid.
Так же еще для новичков записал небольшой видео обзор интерфейса ZennoDroid.
#####################
Мой Телеграм Канал
Мой Youtube Канал
Поддержка автора: Донат
USDT TRC20: TBbnjJGwHEeKP5KEr7FNhsBmhR6V1XKds1
#####################
У кого проблемы с YouTube, продублировал видео в ВК
VK | VK
vk.com
Последнее редактирование: