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

afk

Client
Регистрация
28.11.2016
Сообщения
55
Благодарностей
14
Баллы
8
Всем привет. Кто подскажет как запустить ProxyDroid на Memu?
 

radv

Client
Регистрация
11.05.2015
Сообщения
1 628
Благодарностей
902
Баллы
113

Artur777

Client
Регистрация
11.10.2018
Сообщения
106
Благодарностей
46
Баллы
28
Всем привет кто подскажет как парсить текст из телефона в аппиум ?
 

wmz1986

Client
Регистрация
30.05.2016
Сообщения
26
Благодарностей
7
Баллы
3
Всем привет кто подскажет как парсить текст из телефона в аппиум ?
List<string> ls = new List<string>();
System.Collections.ObjectModel.ReadOnlyCollection<OpenQA.Selenium.IWebElement> x1 = driver.FindElementsByXPath("путь что парсить");
foreach (var el in x1)
ls.Add(el.GetAttribute("text"));
project.Variables["переменная"].Value = string.Join(";", ls);
 

Artur777

Client
Регистрация
11.10.2018
Сообщения
106
Благодарностей
46
Баллы
28
72291

вот такая ошибка у меня
List<string> ls = new List<string>();
System.Collections.ObjectModel.ReadOnlyCollection<OpenQA.Selenium.IWebElement> x1 = driver.FindElementsByXPath("путь что парсить");
foreach (var el in x1)
ls.Add(el.GetAttribute("text"));
project.Variables["переменная"].Value = string.Join(";", ls);
 

wmz1986

Client
Регистрация
30.05.2016
Сообщения
26
Благодарностей
7
Баллы
3
Вместо Верификация -путь xpath

Вот у меня полный код
C#:
// забираем класс driver из context
var driver = project.Context["driver"];
// используем наш класс с методами
m m = new m(driver , project);

System.Threading.Thread.Sleep(3000);
List<string> ls = new List<string>();
System.Collections.ObjectModel.ReadOnlyCollection<OpenQA.Selenium.IWebElement> x1 = driver.FindElementsByXPath("/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.view.ViewGroup/android.widget.FrameLayout[2]/android.widget.RelativeLayout/android.widget.ListView/android.widget.RelativeLayout[1]/android.widget.TextView[2]");
foreach (var el in x1)
ls.Add(el.GetAttribute("text"));
project.Variables["sms"].Value = string.Join(";", ls);


System.Threading.Thread.Sleep(3000);
 
  • Спасибо
Реакции: Artur777

Artur777

Client
Регистрация
11.10.2018
Сообщения
106
Благодарностей
46
Баллы
28
Вместо Верификация -путь xpath

Вот у меня полный код
C#:
// забираем класс driver из context
var driver = project.Context["driver"];
// используем наш класс с методами
m m = new m(driver , project);

System.Threading.Thread.Sleep(3000);
List<string> ls = new List<string>();
System.Collections.ObjectModel.ReadOnlyCollection<OpenQA.Selenium.IWebElement> x1 = driver.FindElementsByXPath("/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.view.ViewGroup/android.widget.FrameLayout[2]/android.widget.RelativeLayout/android.widget.ListView/android.widget.RelativeLayout[1]/android.widget.TextView[2]");
foreach (var el in x1)
ls.Add(el.GetAttribute("text"));
project.Variables["sms"].Value = string.Join(";", ls);


System.Threading.Thread.Sleep(3000);
спасибо все четко)
 

Cyber-Inst

Новичок
Регистрация
06.06.2020
Сообщения
3
Благодарностей
0
Баллы
1
Никто не запрещает поставить на тлф. ProxyDroid и в нем менять прокси на всем телефоне.

Но правильней было бы использовать эмулятор андрюши и так же управлять им, а прокси менять в
Proxyfier при помощи WinApi =)
Можно у вас заказать шаблон? мой тг Cyber_Inst
 

maksimk26

Client
Регистрация
19.08.2020
Сообщения
3
Благодарностей
1
Баллы
3
Многое изменилось с момента первого поста. Настроил себе всё с нуля, поставил везде свежие версии необходимого софта. Кому нужно, прикладываю актуальные рабочие dll.
Так же изменился класс настроек, теперь начальные настройки выглядят так:
C#:
AppiumOptions options = new AppiumOptions();
options.PlatformName = "Android";
options.AddAdditionalCapability("deviceName", "myDevice");
options.AddAdditionalCapability("platformVersion", "7.1.1");
options.AddAdditionalCapability("automationName", "UiAutomator2");
options.AddAdditionalCapability("noReset", "True");
options.AddAdditionalCapability("unicodeKeyboard", "true");
options.AddAdditionalCapability("appPackage", "com.instagram.android");
options.AddAdditionalCapability("appActivity", ".activity.MainTabActivity");
AndroidDriver<IWebElement> driver = new AndroidDriver<IWebElement>(new Uri("http://127.0.0.1:4723/wd/hub"), options);
В батнике для запуска appium'a следующая команда:
Код:
"C:/Program Files/nodejs/node.exe" "C:/Users/User/AppData/Local/Programs/Appium/resources/app/node_modules/appium/build/lib/main.js" --address 127.0.0.1 --chromedriver-port 9516 --bootstrap-port 4725 --no-reset --local-timezone
Можете, пж-та, помочь? Пытаюсь запустить этот код в кубике (только менял порт на порт эмулятора блюстакс + appPackage и appActivity на свои), в итоге ошибка "Выполнение действия CSharp OwnCode. Отказ в доступе: 'OpenQA.Selenium.Remote.DesiredCapabilities'." Может чего с библиотеками недоподцепил, уже мозг сломал, в чем может быть причина?
 

Zedx

Client
Регистрация
12.06.2018
Сообщения
610
Благодарностей
260
Баллы
63
Можете, пж-та, помочь? Пытаюсь запустить этот код в кубике (только менял порт на порт эмулятора блюстакс + appPackage и appActivity на свои), в итоге ошибка "Выполнение действия CSharp OwnCode. Отказ в доступе: 'OpenQA.Selenium.Remote.DesiredCapabilities'." Может чего с библиотеками недоподцепил, уже мозг сломал, в чем может быть причина?
Возможно дело как раз в том, что используется bluestacks, но это неточно. У меня его к сожалению нет, чтобы проверить.
 

Skrine

Client
Регистрация
05.02.2020
Сообщения
52
Благодарностей
5
Баллы
8
Ребят хелпми плиз) При работе с браузером если элемента нет на странице то if (элемент.IsVoid) {код}
вопрос такой) как тут сделать такую структуру правильной, тоесть сказать что делать если элемента нет
Естестно код ниже не работает) Сижу думаю как это правильно написать

var test = driver.FindElementByXPath("//android.widget.ImageView[contains(@content-desc, 'Меню')]");
if (!test.Void) {return "Нету";}
test.Click();
 

Hanma

Client
Регистрация
02.07.2020
Сообщения
18
Благодарностей
3
Баллы
3
Ребят хелпми плиз) При работе с браузером если элемента нет на странице то if (элемент.IsVoid) {код}
вопрос такой) как тут сделать такую структуру правильной, тоесть сказать что делать если элемента нет
Естестно код ниже не работает) Сижу думаю как это правильно написать

var test = driver.FindElementByXPath("//android.widget.ImageView[contains(@content-desc, 'Меню')]");
if (!test.Void) {return "Нету";}
test.Click();
if (driver.FindElementsByXPath("//android.widget.ImageView[contains(@content-desc, 'Меню')]").Count>0)
{
твоё действие, если элемент есть;
}
else
{
действие, при котором элемент отсутствует;
}
 
  • Спасибо
Реакции: Skrine

Assassin

Client
Регистрация
17.11.2011
Сообщения
24
Благодарностей
3
Баллы
3
Долгое время телефоны работали себе, вдруг ни с того ни с сего все перестало работать и в ЗП начали сыпаться такие ошибки:
C#:
Выполнение действия CSharp OwnCode: Bot. The HTTP request to the remote WebDriver server for URL http://127.0.0.1:3001/wd/hub/session timed out after 60 seconds.
Подскажите плиз, как решить эту проблему? Почему WebDriver перестал отвечать?
 

Hanma

Client
Регистрация
02.07.2020
Сообщения
18
Благодарностей
3
Баллы
3
Всем привет, тупняк напал - не могу разобраться с задачей, помогите пожалуйста: есть две кнопки у телефона - удалить и остановить. Отличаются у них только значения resource-id и text, остальные атрибуты одинаковые. Но, теперь вопрос - как Мне кликнуть только на кнопку Остановить, если её значение еnabled? ( В Моём случае кликается кнопка удалить, что не устраивает вообще. Может кто знает как правильно осуществить поиск по нескольким значениям сразу, т.е. по resource-id и enabled одновременно?)
Zenno.png
 
Последнее редактирование:

Skrine

Client
Регистрация
05.02.2020
Сообщения
52
Благодарностей
5
Баллы
8
Долгое время телефоны работали себе, вдруг ни с того ни с сего все перестало работать и в ЗП начали сыпаться такие ошибки:
C#:
Выполнение действия CSharp OwnCode: Bot. The HTTP request to the remote WebDriver server for URL http://127.0.0.1:3001/wd/hub/session timed out after 60 seconds.
Подскажите плиз, как решить эту проблему? Почему WebDriver перестал отвечать?
У меня кстати тоже часто такая фигня почемуто(
 

Assassin

Client
Регистрация
17.11.2011
Сообщения
24
Благодарностей
3
Баллы
3
Как сделать двойной клик по элементу?
Локатор по которому нужно произвести клик:
C#:
driver.FindElementByXPath("//android.view.ViewGroup[contains(@resource-id, 'row_feed_photo_media_tag_hints')]").Click();
Из инструкции Appium:
C#:
TouchActions action = new TouchActions(driver);
action.DoubleTap(element);
action.Perform();
Не могу правильно составить код:

C#:
TouchActions action = new TouchActions(driver);
action.DoubleTap("//android.view.ViewGroup[contains(@resource-id, 'row_feed_photo_media_tag_hints')]");
action.Perform();
 

leha52rus

Client
Регистрация
01.06.2017
Сообщения
274
Благодарностей
92
Баллы
28
Олды, проблема на первый взгляд смешная
Устанавливаю Android SDK, он в свою очередь ругается на отсутствие java (JDK) устанавливаю JDK
запускаю Android SDK, он по прежнему ругается что не установлен JDK
Гуглить умею, пути прописывал до установленного JDK в переменных Windows, ничего не помогает.
Работаю в OS Windows_10
Подскажите пожалуйста, может кто то сталкивался ?
 

SuperMinion

Client
Регистрация
04.03.2021
Сообщения
7
Благодарностей
1
Баллы
3
Всем привет! Такая же проблема( Вин 10. При попытке установки SDK, требует JDK. После установки JDK все равно требует JDK. Переменные в винде прописаны. Чего делать то, подскажите пожалуйста.
 

leha52rus

Client
Регистрация
01.06.2017
Сообщения
274
Благодарностей
92
Баллы
28
Всем привет! Такая же проблема( Вин 10. При попытке установки SDK, требует JDK. После установки JDK все равно требует JDK. Переменные в винде прописаны. Чего делать то, подскажите пожалуйста.
Это трешак, Ага!
Я болт забил на это дело )))
 

SuperMinion

Client
Регистрация
04.03.2021
Сообщения
7
Благодарностей
1
Баллы
3
Это трешак, Ага!
Я болт забил на это дело )))
Я на 8.1 попробовал, вроде первый этап проходит, а потом я чувствую что я тупо помирать начинаю)))) Мозг в трубочку сворачивается)) Не работает ничего как ни крути. Выше писали что dll устарели и код. Попробовал с новыми вариантами, нифига не получается. Может есть какая альтернатива данной идее? Смысл как бы тот же, но инструменты другие. Или это гиблое дело?)
 

qweqwe5435

Client
Регистрация
12.02.2017
Сообщения
39
Благодарностей
24
Баллы
8
Я на 8.1 попробовал, вроде первый этап проходит, а потом я чувствую что я тупо помирать начинаю)))) Мозг в трубочку сворачивается)) Не работает ничего как ни крути. Выше писали что dll устарели и код. Попробовал с новыми вариантами, нифига не получается. Может есть какая альтернатива данной идее? Смысл как бы тот же, но инструменты другие. Или это гиблое дело?)
У меня тоже не получилось запустить. Без глубоких знаний в этом деле или свежего мануала походу не получится )
 

ggreu

Client
Регистрация
15.09.2020
Сообщения
5
Благодарностей
0
Баллы
1
Всем привет, все пролистал и не нашел ответ на эту ошибку

Тип Время Сообщение
21:53:37 Подключение сборки к проекту H:\Управление андроид\DLLs\appium-dotnet-driver.dll не является .Net сборкой или не возможно получить доступ к сборке
21:53:38 "Подключение сборки к проекту System.Exception: Выдано исключение типа ""System.Exception"".
в ZennoLab.ProjectMaker.Controls.ProjectEditor.ProjectBar.StaticBlockSettings.GACReferences.uhferDv4Md(Object , OkButtonClickArgs )"
это при добавление библиотеки от Appium и Selenium а также Newtonsoft.Json их в ссылки GAC:
 

SuperMinion

Client
Регистрация
04.03.2021
Сообщения
7
Благодарностей
1
Баллы
3
Всем привет, все пролистал и не нашел ответ на эту ошибку

Тип Время Сообщение
21:53:37 Подключение сборки к проекту H:\Управление андроид\DLLs\appium-dotnet-driver.dll не является .Net сборкой или не возможно получить доступ к сборке
21:53:38 "Подключение сборки к проекту System.Exception: Выдано исключение типа ""System.Exception"".
в ZennoLab.ProjectMaker.Controls.ProjectEditor.ProjectBar.StaticBlockSettings.GACReferences.uhferDv4Md(Object , OkButtonClickArgs )"
это при добавление библиотеки от Appium и Selenium а также Newtonsoft.Json их в ссылки GAC:

Но вроде как если откатить версию зенки назад (я откатывал на 7.2.0.0), то библиотеки добавляются, но потом все равно какие то ошибки выдает.
 
  • Спасибо
Реакции: ggreu

Sib

Новичок
Регистрация
19.04.2021
Сообщения
9
Благодарностей
0
Баллы
1
Вопрос, а если вот эту историю запускать в промышленных масштабах, предусмотрена какая-то возможность подменять данные устройства? Fingerprint, imei и все такое? Именно при работе с реальным смартфоном
 

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