Меню Рубрики

Как написать бота для android

Как написать бота для android

Для функционирования программы необходимы права root пользователя.

Краткое описание:
Инструмент автоматизации, который превратит ваше андроид-устройство в бота для выполнения повторяющихся задач.

Описание:
Возможности программы:
— Поддерживаются касания, долгий тап, текстовый ввод и физические клавиши управления.
— Отключение блокировки для предотвращения выключения экрана.
— Задержка запуска, дает необходимое времени, для того, чтобы сделать то, что вам нужно перед запуском виполнения.
— Экспорт/импорт ваших отредактированных файлов (в расширении .abm)
— Добавляйте, выбирайте, переключайте, изменяйте и удаляйте действия из списка.
— Экспортируйте их в скрипт, выполняемый из эмулятора терминала или через ADB.
— Добавляйте виджеты, чтобы выполнять предварительно созданные задания!
— Просматривайте свои файлы в приложении!

Полезные подсказки:
— Чтобы отредактировать задание, нужно сделать долгий тап по нему и задать требуемые значения.
— Чтобы выбрать действие просто нажмите на него.
— Чтобы поменять местами два, находящихся рядом действия, выберите их и нажмите кнопку «Поменять местами строки»
— Чтобы остановить выполнение в фоновом режиме просто тапните по уведомлению.
— Чтобы удалить элементы в файловом менеджере сделайте по ним долгий тап.

Русский интерфейс: Да
Версия андроида 4.1+

версия 1.9:AndroidBotMaker_1.9.apk ( 1,1 МБ )
версия 1.9 Rus:AndroidBotMaker 1.9_Rus.apk ( 1,13 МБ )

Сообщение отредактировал Slav_nsk — 10.12.19, 18:53

Источник статьи: http://4pda.ru/forum/index.php?showtopic=496115

Разработка приложений для Android. Простой бот на WebKit. Тестировалось на Samsung Galaxy Y S5360

Накрылась моя старенькая Nokia N72.

Выпил пива (и не только), вырубился, перед этим, вероятнее всего, разлил на себя тоже пиво ну и телефон отказался работать.

Вообще, телефонов у меня было много. Думаю что не у меня одного. Вот только покупал я себе самые простые. В первую очередь это для меня средство связи. Иногда нужен интернет. Почту, например, прочитать. Ну и все. Плюс долго они у меня не задерживаются. То разобью, то потеряю, то промочу. Если дал за телефон несколько сотен гривен, то не так обидно его терять, если бы дал за него несколько тысяч.

Тот, что купил тоже не очень дорогой (чуть больше 1000 гривен в магазине). Это, наверное, один из самых дешевых, учитывая эго возможности. Запихнули туда все, что можно, хотя и с минимальными параметрами.

Фото Samsung Galaxy Y S5360 (оригинальное 4800 x 1800 px):

В общем, пост не о моих телефонах и не о моем последнем приобретении. Так как я программист, первым делом после покупки и настройки девайса пошел в гугл искать информацию о программировании для Android.

До этого имел опыт программирования под Symbian OS 9.1 стоявшую на моей Nokia N73. Я, хоть и фанат C++, дальше Hello World не пошел. Пришлось осваивать Java. Так как это внук или правнук C++, особых проблем с освоением не возникло. И так на свет появилось несколько уровней «Klotski» под Symbian OS. Сделал примерно за день и это вместе с освоением неизвестного мне языка и системы.

Кстати о Nokia N73: покупал я его очень давно стоял он тогда где-то 3500 гривен, ну и одним прекрасным вечером я снова немного перебрал. Мимо проезжали стражи порядка, увидев меня решили остановиться и поболтать о том о сем. Из-за моей неадекватности, конструктивного диалога не получилось и было решено прокатить меня на машине к ближайшему упорному пункту. Перед тем как ехать один из них попросил у меня телефон, чтобы позвонить. Больше я телефон не видел. Покупался он конечно за не малые деньги, но радует то, что я им пользовался много лет ну и что его цена за это время существенно упала. Та и состояние у него было не на пять с плюсом.

Вернемся к сути поста, а именно к Android OS.

В первую очередь понадобится среда разработки. Я, конечно, очень привык к Visual Studio та и есть в сети статьи по теме разработки приложений для Android в ней. Пишут, что вроде как можно писать на Java, C++ и даже на C#. Я особо не вникал в тему, поэтому не знаю, что и где качать, каким образом это все настраивать и использовать. В общем, решил послушать совета гугла который рекомендует использовать Eclipse с плагином Android Development Tools (ADT).

Перед тем как ставить среду необходимо поставить Java SDK (JDK). Скачать можно здесь. После загрузки и установки можно ставить и среду. Можно ставить все по отдельности: Eclipse, Android SDK, Android Development Tools (ADT) но зачем нам лишняя трата времени на настройку, если гугл предлагает скачать все это вместе? Качать от сюда. Для загрузки гугл предлагает обычный архив, без установочного пакета, поэтому после скачивания просто извлеките содержимое в какую-то папку в корень диска, например «C:\android». Если положить куда-то глубже будут проблемы. Особенно если в пути будут пробелы или русские символы.

Запустите SDK Manager. Вы увидите список компонентов, которые можно загрузить через интернет. В колонке «Status» указано, установлен компонент или нет и есть ли для него обновление.

В идеале нужно установить все флажки и нажать на кнопку «Install package» и тем самым загрузить и установить все существующие компоненты. Учтите, что это займет очень много времени, так как качать придется не один гигабайт информации. Если у вас быстрый интернет и нет ограничений в трафике тогда все норм, в противном случае я бы рекомендовал вам обновить установленные компоненты и установить платформу, для которой вы собираетесь компилировать программы. Я выбрал Android 2.2 (API 8). Для установки только платформы без примеров и дополнительных API необходимо установить флажок «SDK Platform».

После загрузки и установки необходимых вам компонентов нужно создать Android Virtual Device (AVD), эмулятор смартфонов с которым будет работать Eclipse. Запускаем среду, открываем меню «Window» и выбираем пункт «Android Virtual Deviсe Manager». В появившемся диалоге на вкладке «Android Virtual Deviсe» нажимаем кнопку «New» после чего появится еще один диалог. В поле «AVD Name» вводим имя устройства на ваше усмотрение. Оно может состоять из произвольного набора символов. В выпадающем списке «Deviсe» выбираем желаемое устройство. Основное их отличие это размер экрана. Честно говоря, не знаю, чем они еще отличаются. В списке «Target» можно выбрать одну из установленных платформ. Еще можно установить размер «SD Card», например, 512 MiB. После чего жмем кнопку «Ok» и закрываем диалог «Android Virtual Deviсe Manager».

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

Во время первых запусков проекта созданного мастером у меня появлялись различные ошибки. Лечил гуглением. Так что если будут ошибки, просто переписываем сообщение об ошибке в строку поиска гугл и переходим по какому-то результату. В основном решение находится сразу.

Так как основная моя специализация это написание различных ботов было решено написать для Android простой бот. Думаю что большинству извесно что Android построен на Linux, а браузер эго на WebKit который и будет использоватся программой в качестве движка. Программа будет иметь кнопку, текстовое поле и пространство для отображения страниц. После ввода в текстовое поле поискового запроса и нажатия на кнопку программа перейдет на Яндекс затем с помощью JavaScript введет поисковую фразу и отправит форму для поиска. Приступ.

Нажимаем «File» > «New» > «Android Application Project» откроется мастер создания проекта.

Application name — это название программы, которое будет отображаться в списке программ на смартфоне.
Project Name – имя проекта, которое будет отображаться в списке проектов в Eclipse
Package name – префикс для классов проекта. Я использую com.zmax.androidbot. после первой точки название фирмы (если ее нет, можете написать, к примеру, свой ник). После второй точки название проекта.
Minimum Required SDK – минимальная версия Android на которой будет работать программа.
Target SDK – максимальная версия Android на которой тестируется приложение.
Compile With – возможности какой версии будут доступны программе.
Везде выбираем Android 2.2 (Froyo). В общем, то что вы скачали.
Theme – выбираем None.

Оставляем два флажка: Create Activity и Create Project in Workspace.

Так как на следующих диалогах ничего менять не нужно, можно сразу нажимать Finish. Проект успешно создан.

Теперь необходимо добавить элементы управления. Это можно сделать в визуальном редакторе или за счет редактирования activity_main.xml. Нужно написать следующее:

xmlns:android = «httр://schemas.android.com/apk/res/andr oid»
xmlns:tools = «httр://schemas.android.com/tools»
android:layout_width = «match_parent»
android:layout_height = «match_parent»
android:paddingBottom = «@dimen/activity_vertical_margin»
android:paddingLeft = «@dimen/activity_horizontal_margin»
android:paddingRight = «@dimen/activity_horizontal_margin»
android:paddingTop = «@dimen/activity_vertical_margin»
tools:context = «.MainActivity» >

android:id = «@+id/editText1»
android:layout_width = «wrap_content»
android:layout_height = «wrap_content»
android:layout_alignParentLeft = «true»
android:layout_alignParentTop = «true»
android:ems = «10»
android:text = «»ZMax Home Industry»»/>

android:id = «@+id/button1»
style = «?android:attr/buttonStyleSmall»
android:layout_width = «wrap_content»
android:layout_height = «wrap_content»
android:layout_alignBaseline = «@+id/editText1»
android:layout_alignBottom = «@+id/editText1»
android:layout_alignParentRight = «true»
android:layout_marginRight = «17dp»
android:text = «Search»/>

android:id = «@+id/webView1»
android:layout_width = «match_parent»
android:layout_height = «match_parent»
android:layout_alignLeft = «@+id/editText1»
android:layout_below = «@+id/editText1»
android:layout_marginTop = «18dp»/>

А теперь можно немного покодить. В MainActivity.java в метод onCreate нужно дописать:

findViewById ( R . id . button1 ). setOnClickListener ( new OnClickListener () <
@Override public void onClick ( View v ) <
final WebView webView = ( WebView ) findViewById ( R . id . webView1 );
webView . getSettings (). setJavaScriptEnabled ( true );
webView . setWebViewClient ( new WebViewClient () <
@Override public void onPageFinished ( WebView view , String url ) <
String strSearch = (( TextView ) findViewById ( R . id . editText1 )). getText (). toString ();
String strScript =
«javascript:» +
«inputText=document.getElementById(‘quer y’);» +
«inputText.value='» + strSearch + «‘;» +
«inputText.form.submit();» ;
webView . loadUrl ( strScript );
>
>);
webView . loadUrl ( «htt р ://www.yandex.ru/m/» );
>
>);

С помощью метода setOnClickListener устанавливаем обработчик нажатия на кнопку. Переопределяем метод onClick. Берем WebView и с помощью метода setJavaScriptEnabled включаем JavaScript. Устанавливаем WebViewClient и переопределяем метод onPageFinished который вызывается после загрузки страницы. В нутрии него формируем скрипт и выполняем его с помощью loadUrl. Далее по коду идет еще один loadUrl который и загрузит Яндекс.

В AndroidManifest.xml нужно дописать:

Это для того чтобы система дала программе права на доступ в интернет.

Ну, вот и все! Программа готова для запуска в эмуляторе или на устройстве с Android 2.2 либо выше.

Вот так выглядит в эмуляторе, после загрузки Яндекса и выполнения скрипта

Проект положил в архив. Качать тут. В папке «bin» есть откомпилированная программа готовая для установки на устройство.

Так как это мой первый проект под Android, та и один из первых на Java, код и программа довольно таки сыроваты. Не знаю почему, сначала программа у меня не работала. Переходила на Яндекс но не вводила запрос. Как мне кажется, особых изменений в код я не вносил, но в один прекрасный момент она заработала. Еще один глюк: если изменить положение телефона, страница исчезает с экрана. Также хз, от чего и почему.

Ну, в общем, система меня заинтересовала. Думаю над каким-то серьезным проектом. Если сделаю программу или узнаю что-то интересное о Android, тогда напишу пост.

Источник статьи: http://win-ax.livejournal.com/5297.html

Создание ботов для игр без программирования. Автоматизация рыбалки

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

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

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

Использовать будем программу Кибор, в котором присутствует визуальный редактор кода. В визуальном редакторе Кибор схема данного бота будет выглядеть таким образом. На ее составление ушло не более 10 минут с подготовкой всех изображений.

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

1) Нажимаем на кнопку Забросить и щелкаем по ней левой кнопкой мыши.

2) Ожидаем появление кнопки Тянуть. При появление кнопки зажимаем на ней левую кнопку мыши. Появляется полоса обозначающая натяжение лески. Нажимая и отпуская левую кнопку мыши следим что бы полоса не перевалила за правый или левый край.

3) Когда рыба вытащена закрываем табличку и переходим к первому этапу.

Для данных действий бот должен уметь:

Распознать кнопку Забросить и нажать на нее.

Распознать кнопку Тянуть и зажать на ней левую кнопку мыши.

Распознать по полосе когда надо кратковременно отпускать левую кнопку мыши.

Распознать появление таблички, что бы закрыть ее и начать лов сначала.

Овальный блок это точка старта. Синие блоки отвечают за анализ экрана, зеленые на манипулирование мышью.

Черные линии — линии переходов по мере выполнения программы. Красные линии — переходы при не нахождение указанного изображения в блоке анализа экрана.

На данном скриншоте показаны какие части изображений используются в каких блоках.

Бот строится по порядку действий игрока.

Первым создается блок Старт. В нем объявляются переменные в которые мы в дальнейшем запомним координаты кнопок.

Затем идет блок поиска кнопки Забросить и клик по ней.

После этого ожидается появление кнопки Тянуть. В настройках свойств этого блока даем время ожидания появления этой кнопки (первый параметр). Пока кнопка не появится программа будет крутиться в этом блоке указанное время. как только кнопка появится управление перейдет дальше. При появление кнопки ее координаты запишутся в переменные (x y) и мышь зажмет левую кнопку на ней.

После этого ожидаем появление полосы. Точнее указанного нами ее фрагмента, при появление которого надо кратковременно отпустить левую кнопку мыши.

Одновременно с полосой сканируем появление таблички о пойманной рыбе. Эти два изображения сканируются по очереди, пока одно из них не будет найдено. Координаты найденного крестиика закрытия таблички запишутся в переменные (x1 y1).

Как только появится указанный участок полосы при появление которого надо кратковременно отпустить левую кнопку мыши управление переходит в блоки управления мышью. Действия мыши происходит по координатам (x y) кнопки Тянуть. Затем управление опять переходит на сканирование полосы.

Когда рыба поймана появится табличка с крестиком для закрытия. В этом случае управление перейдет в нижние блоки управления мыши. В них мышь отпустит левую кнопку на кнопке Тянуть, переместится на крестик закрытия таблички (x1 y1), закроет табличку и управление перейдет в начало программы.

Источник статьи: http://pikabu.ru/story/sozdanie_botov_dlya_igr_bez_programmirovaniya_avtomatizatsiya_ryibalki_5311139


Популярные записи

0 0 голоса
Article Rating
Подписаться
Уведомить о
guest

0 Комментарий
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии