4 место Управление любыми Android приложениями на смартфоне из ZP

Фууух, наконец все настроил) Может не совсем в тему вопрос, но когда цепляюсь к приложухе через капабилити appackage и appactivity, приложуха постоянно слетает. т.е. приложение запускается, но каждый раз все данные внутри сбрасываются, приложение тупит, зачастую вылетает, периодически не подгружает данные и т.д. Есть идеи в чем может быть дело? можно как-то запустить просто эмулятор без appactivity и appackage, и кликнуть по иконке на рабочем столе?
Видимо неправильный activity установили. Могу посоветовать для получения их параметров прилку "activity launcher", сам её юзаю.
 
понимаю, что неправильный activity, но как это решить - не знаю) мозги уже закипают, помогите, плиз. Вообщем, установил прилку, которую вы посоветовали. в итоге она выдает 4 activity для нужного мне приложения: com.facebook.CustomTabActivity, com.facebook.accountkit.ui.AccountKitEmailRedirectActivity, site.com.android.StartupActivity и site.com.android.MainActivity. прикол в том, что первые два activity вообще не относятся к прилке, я не использую фэйсбук. остальные два activity запускают приложение, но оно сразу же вылетает. когда пытался сделать ярлык, прилка что вы посоветовали, выдает ошибку, мол в нужном вам приложении нету default activity. видел кто-нибудь подобное? есть мысли как решить задачку?
Видимо неправильный activity установили. Могу посоветовать для получения их параметров прилку "activity launcher", сам её юзаю.
 
adb shell pm list packages -f
смотришь доступные активити проложения

запускаешь adb am че там дальше хз, не пользовался года 2, активити может быть несколько, по дефолту мейн активити в большенстве аппликешенов открывают первый экран апк

если вылетает, попробуй другой эмуль, лучше стоковый с андроид студио
 
Последнее редактирование:
ух, 27-м страниц чтива.

Парни подскажите кто здесь курит дольше, где искать готовые примеры по управлению bluestacks или Memu
 
ух, 27-м страниц чтива.

Парни подскажите кто здесь курит дольше, где искать готовые примеры по управлению bluestacks или Memu
Ты все страницы прочитал? А что из прочтенного попробовал?
 
  • Спасибо
Реакции: Koqpe
Отключение
Код:
Развернуть Свернуть Копировать
adb shell svc data disable
Включение
Код:
Развернуть Свернуть Копировать
adb shell svc data enable
Android 9.0 nokia 2.2 работает для рестарта сети.на 4G ip не меняется.на 3G все гуд
 
Последнее редактирование:
Привет. Подскажите кто-нибудь, пожалуйста, как вместо адреса сервера подставить значение из переменной зенки? пробовал через project.Variables["driver_port"].Value - кубик стартует, но тут же выходит без каких либо ошибок. Значение в самой переменной установлено.

AndroidDriver<IWebElement> driver = new AndroidDriver<IWebElement>(new Uri("http://127.0.0.1:4723/wd/hub"), cap); // инициализируем экземпляр класса драйвера с настройками
 
Привет. Подскажите кто-нибудь, пожалуйста, как вместо адреса сервера подставить значение из переменной зенки? пробовал через project.Variables["driver_port"].Value - кубик стартует, но тут же выходит без каких либо ошибок. Значение в самой переменной установлено.

AndroidDriver<IWebElement> driver = new AndroidDriver<IWebElement>(new Uri("http://127.0.0.1:4723/wd/hub"), cap); // инициализируем экземпляр класса драйвера с настройками
мой рабочий вариант:
C#:
Развернуть Свернуть Копировать
AndroidDriver<IWebElement> driver = new AndroidDriver<IWebElement>(new Uri("http://127.0.0.1:"+project.Variables["port"].Value+"/wd/hub"), cap);
 
  • Спасибо
Реакции: Master.Vasiliy
Привет не подскажете как установить apk?добавил cap.setCapability("app", "ссылка до apk файла"); но не работает
 
мой рабочий вариант:
C#:
Развернуть Свернуть Копировать
AndroidDriver<IWebElement> driver = new AndroidDriver<IWebElement>(new Uri("http://127.0.0.1:"+project.Variables["port"].Value+"/wd/hub"), cap);
Спасибо большое. Воюю с многопотоком. Может подскажешь еще по одному вопросу? Когда отправляю команду через cmd вручную: adb -s 192.168.110.101:5555 shell input keyevent 66. Все ок, передается на нужный девайс. Отправляю через зенку, команда не поступает. Не в курсе в чем может быть дело? Если убираю номер девайса, все гуд работает.

Через зенку отправляю команду так:

ProcessStartInfo KnopkaEnter = new ProcessStartInfo();
KnopkaEnter.FileName = @"adb.exe";
KnopkaEnter.Arguments = @"shell -s 192.168.110.101:5555 input keyevent 66"; //параметры выполнения adb команды
//KnopkaEnter.WindowStyle = ProcessWindowStyle.Hidden; //скрываем окно выполнения
Process.Start(KnopkaEnter).WaitForExit();r


UPD: все из-за невнимательности. shell надо было после номера девайса писать

ProcessStartInfo KnopkaEnter = new ProcessStartInfo();
KnopkaEnter.FileName = @"adb.exe";
KnopkaEnter.Arguments = @"-s 192.168.110.101:5555 shell input keyevent 66"; //параметры выполнения adb команды
//KnopkaEnter.WindowStyle = ProcessWindowStyle.Hidden; //скрываем окно выполнения
Process.Start(KnopkaEnter).WaitForExit();r
 
Последнее редактирование:
Последнее редактирование:
Всем привет. Подскажите как реализовать нажатие на кнопку имеющие только такой параметр:
Код:
Развернуть Свернуть Копировать
<android.widget.TextView content-desc="Кнопка "Поделиться"">

Вся проблема в двойных кавычках "", не могу понять как правильно вставить в эту часть кода:
Код:
Развернуть Свернуть Копировать
android.widget.TextView[contains(@content-desc, 'Кнопка "Поделиться"')]

В каком направлении копать?
 
Всем привет. Подскажите как реализовать нажатие на кнопку имеющие только такой параметр:
Код:
Развернуть Свернуть Копировать
<android.widget.TextView content-desc="Кнопка "Поделиться"">

Вся проблема в двойных кавычках "", не могу понять как правильно вставить в эту часть кода:
Код:
Развернуть Свернуть Копировать
android.widget.TextView[contains(@content-desc, 'Кнопка "Поделиться"')]

В каком направлении копать?
Я не силен но возможно так?!
driver.FindElementByXPath("//android.widget.TextView[contains(@content-desc, ''Кнопка 'Поделиться''')]").Click();
 
Последнее редактирование:
Я не силен но возможно так?!
driver.FindElementByXPath("//android.widget.TextView[contains(@content-desc, ''Кнопка 'Поделиться''')]").Click();
Не работает такой вариант, пробовал. Пробовал текст в кавычках передать через переменную, тоже не кликает(
 
Последнее редактирование:
Привет всем.
Может какой нибудь великий человек возьмется переписать мануал?
Или может кто то, из тех кто разобрался, запишет видео как он создаёт шаблон с нуля.
Это не сильно сложно, а почёт и уважение форумчан бесценно!
 
Привет всем.
Может какой нибудь великий человек возьмется переписать мануал?
Или может кто то, из тех кто разобрался, запишет видео как он создаёт шаблон с нуля.
Это не сильно сложно, а почёт и уважение форумчан бесценно!
Все быстро меняется. Видел в природе видео(платное), но как оказалось оно уже устарело и при попытке повторить действия с новой версией библиотеки, выдает ошибки, а в старой нет некоторых нужных функций. Да и бесплатно думаю, мало кто это захочет сделать. Может только на одном из следующих конкурсов.
 
Привет всем.
Может какой нибудь великий человек возьмется переписать мануал?
Или может кто то, из тех кто разобрался, запишет видео как он создаёт шаблон с нуля.
Это не сильно сложно, а почёт и уважение форумчан бесценно!
На складчике продают мануал в видео формате.
 
На складчике продают мануал в видео формате.
Я как раз про него и говорил. Там старая версия библиотек, и криво сделано. Но для начинающих может быть полезно.
 
  • Спасибо
Реакции: Koqpe
Всем привет. Подскажите как реализовать нажатие на кнопку имеющие только такой параметр:
Код:
Развернуть Свернуть Копировать
<android.widget.TextView content-desc="Кнопка "Поделиться"">

Вся проблема в двойных кавычках "", не могу понять как правильно вставить в эту часть кода:
Код:
Развернуть Свернуть Копировать
android.widget.TextView[contains(@content-desc, 'Кнопка "Поделиться"')]

В каком направлении копать?

Вот так, я кликаю по тексту, который содержит апостроф
3 ночи искал, как эту херобору обойти...

Попробуй на его основе искать с кавычками, вместо апострофа

driver.FindElement(By.XPath("//android.widget.TextView[@text='Refresh when you're back']")).Click();
 
Вот так, я кликаю по тексту, который содержит апостроф
3 ночи искал, как эту херобору обойти...

Попробуй на его основе искать с кавычками, вместо апострофа

driver.FindElement(By.XPath("//android.widget.TextView[@text='Refresh when you're back']")).Click();
В моем варианте это не подходит. Оказалось, что нужно было выбрать английский язык в приложении и все заработало (в английской версии не было " " ).
 
На каждый экземпляр устройства/эмулятора поднимаем сервер.
Adb команды тоже разделяем. Сначала смотрим серийный_номер через команду adb devices и посылаем команды на устройства
Код:
Развернуть Свернуть Копировать
adb -s серийный_номер команда
Слушай, есть какой вариант под каждый экземпляр эмулятора использовать свои прокси? борюсь уже второй день, вообще genymotion не могу заставить работать с проксями.
 
Привет . Кто может подсказать driver.Swipe(250 , 800 , 450 , 200 , 1000);
-свайп делает, но когда запускаю его после цикла - цикл проходить без ошибок - постоянно ошибка
Выполнение действия CSharp OwnCode Swipe did not complete successfully
 
Привет . Кто может подсказать driver.Swipe(250 , 800 , 450 , 200 , 1000);
-свайп делает, но когда запускаю его после цикла - цикл проходить без ошибок - постоянно ошибка
Выполнение действия CSharp OwnCode Swipe did not complete successfully
Попробуйте добавить паузу в цикле между свайпами или более новую версию библиотеки.
 
  • Спасибо
Реакции: adept
Подскажите пожалуйста. Как можно реализовать нажатие Enter?
 
Подскажите пожалуйста. Как можно реализовать нажатие Enter?
можешь так

ProcessStartInfo KnopkaEnter = new ProcessStartInfo();
KnopkaEnter.FileName = @"adb.exe";
KnopkaEnter.Arguments = @"shell input keyevent 66"; //параметры выполнения adb команды
KnopkaEnter.WindowStyle = ProcessWindowStyle.Hidden; //скрываем окно выполнения
Process.Start(KnopkaEnter).WaitForExit();//Запуск клавишы Enter
 
  • Спасибо
Реакции: Artemka
Всем Привет! Возможно ли через Appium сменить GPS местоположение?
Чтот не получается c driver.Location...пишет:
Выполнение действия CSharp OwnCode: Пишем бота. Unable to cast object of type 'System.Collections.Generic.Dictionary`2[System.String,System.Object]' to type 'System.String'.

юзаю в связке с Memu

код:
C#:
Развернуть Свернуть Копировать
var driver = project.Context["driver"];

driver.Location.Latitude = 342.1;

driver.Location.Longitude = 52.2;
 
Господа, все установил по инструкции, подключился через командную строку к эмулятору мему, но батник все равно вылетает при запуске. Подскажите, пожалуйста, в чем может быть проблема?
В батнике:
"C:\Program Files\nodejs\node.exe" "C:\Users\Alex\AppData\Local\Programs\Appium\resources\app\node_modules\appium\build\lib\main.js" --address 127.0.0.1 --chromedriver-port 6006 --bootstrap-port 2296 --selendroid-port 8082 --no-reset --local-timezone -U 127.0.0.1:21503 -p 4725
Пробовал разные версии нода, с 9 по 11. Аппиум версии 1.15.
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)