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

Ussssan

Новичок
Регистрация
03.08.2021
Сообщения
6
Благодарностей
1
Баллы
3
С айфонами не работает?
 

Valek_333

Client
Регистрация
16.08.2020
Сообщения
14
Благодарностей
4
Баллы
3
Всем привет!
Ребят, мучаюсь давно. Хочу реализовать свайп, но координаты что бы брались из переменной. И так и сяк пробовал - ни в какую. Подскажите пожалуйста как сделать)

То есть основа свайпа пример

TouchAction Action = new TouchAction(driver);
Action.Press(550, 1100).Wait(2001).MoveTo(551, 450).Release().Perform();

Вот как в него вписать данные из переменной?(( Всем заранее огромное спасибо!
 

radv

Client
Регистрация
11.05.2015
Сообщения
3 789
Благодарностей
1 954
Баллы
113
Вот как в него вписать данные из переменной?(( Всем заранее огромное спасибо!
Просто нужно привести переменные к нужному типу данных
C#:
            // Значенния переменных
            string  x_1 = "550";

            string y_1 = "1100";

            string x_2 = "551";

            string y_2 = "450";

            string p_1 = "2001";

            // Приведение у нужному типу
            double x1, y1, x2, y2;

            long p1;

            double.TryParse(x_1, out x1);
            double.TryParse(y_1, out y1);
            double.TryParse(x_2, out x2);
            double.TryParse(y_2, out y2);

            long.TryParse(p_1, out p1);
            
            // Подстановка значений
            Action.Press(x1, y1).Wait(p1).MoveTo(x2, y2).Release().Perform();
 
  • Спасибо
Реакции: Valek_333

Valek_333

Client
Регистрация
16.08.2020
Сообщения
14
Благодарностей
4
Баллы
3
Просто нужно привести переменные к нужному типу данных
C#:
            // Значенния переменных
            string  x_1 = "550";

            string y_1 = "1100";

            string x_2 = "551";

            string y_2 = "450";

            string p_1 = "2001";

            // Приведение у нужному типу
            double x1, y1, x2, y2;

            long p1;

            double.TryParse(x_1, out x1);
            double.TryParse(y_1, out y1);
            double.TryParse(x_2, out x2);
            double.TryParse(y_2, out y2);

            long.TryParse(p_1, out p1);
           
            // Подстановка значений
            Action.Press(x1, y1).Wait(p1).MoveTo(x2, y2).Release().Perform();
Спасибо тебе огромное!!!!
 

valeron

Новичок
Регистрация
03.10.2020
Сообщения
8
Благодарностей
1
Баллы
3
Здравствуйте, а не подскажите почему не добавляются ddl библиотеки?
 

radv

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

valeron

Новичок
Регистрация
03.10.2020
Сообщения
8
Благодарностей
1
Баллы
3
Спасибо, с библиотеками разобрался, а не подскажите почему такая ошибка идет?
Выполнение действия CSharp OwnCode. An unknown server-side error occurred while processing the command. Original error: Error executing adbExec. Original error: 'Command 'C\:\\Users\\Валера\\AppData\\Local\\Android\\android-sdk\\platform-tools\\adb.exe -P 5037 -s GMVGEQT4YSJNBU8S shell settings delete global hidden_api_policy_pre_p_apps' exited with code 255'; Stderr: 'Exception occurred while executing 'delete':
java.lang.SecurityException: Permission denial: writing to settings requires:android.permission.WRITE_SECURE_SETTINGS
at com.android.providers.settings.SettingsProvider.enforceWritePermission(SettingsProvider.java:2374)
at com.android.providers.settings.SettingsProvider.mutateGlobalSetting(SettingsProvider.java:1413)
at com.android.providers.settings.SettingsProvider.mutateGlobalSetting(SettingsProvider.java:1405)
at com.android.providers.settings.SettingsProvider.deleteGlobalSetting(SettingsProvider.java:1376)
at com.android.providers.settings.SettingsProvider.call(SettingsProvider.java:561)
at android.content.ContentProvider.call(ContentProvider.java:2448 )
at android.content.ContentProvider$Transport.call(ContentProvider.java:517)
at com.android.providers.settings.SettingsService$MyShellCommand.deleteForUser(SettingsService.java:399)
at com.android.providers.settings.SettingsService$MyShellCommand.onCommand(SettingsService.java:281)
at android.os.BasicShellCommandHandler.exec(BasicShellCommandHandler.java:98 )
at android.os.ShellCommand.exec(ShellCommand.java:44)
at com.android.providers.settings.SettingsService.onShellCommand(SettingsService.java:49)
at android.os.Binder.shellCommand(Binder.java:936)
at android.os.Binder.onTransact(Binder.java:820)
at android.os.Binder.execTransactInternal(Binder.java:1166)
at android.os.Binder.execTransact(Binder.java:1130)'; Code: '255'
 

cybersnipaqx

Новичок
Регистрация
17.09.2018
Сообщения
1
Благодарностей
0
Баллы
1
Спасибо, с библиотеками разобрался, а не подскажите почему такая ошибка идет?
Выполнение действия CSharp OwnCode. An unknown server-side error occurred while processing the command. Original error: Error executing adbExec. Original error: 'Command 'C\:\\Users\\Валера\\AppData\\Local\\Android\\android-sdk\\platform-tools\\adb.exe -P 5037 -s GMVGEQT4YSJNBU8S shell settings delete global hidden_api_policy_pre_p_apps' exited with code 255'; Stderr: 'Exception occurred while executing 'delete':
java.lang.SecurityException: Permission denial: writing to settings requires:android.permission.WRITE_SECURE_SETTINGS
at com.android.providers.settings.SettingsProvider.enforceWritePermission(SettingsProvider.java:2374)
at com.android.providers.settings.SettingsProvider.mutateGlobalSetting(SettingsProvider.java:1413)
at com.android.providers.settings.SettingsProvider.mutateGlobalSetting(SettingsProvider.java:1405)
at com.android.providers.settings.SettingsProvider.deleteGlobalSetting(SettingsProvider.java:1376)
at com.android.providers.settings.SettingsProvider.call(SettingsProvider.java:561)
at android.content.ContentProvider.call(ContentProvider.java:2448 )
at android.content.ContentProvider$Transport.call(ContentProvider.java:517)
at com.android.providers.settings.SettingsService$MyShellCommand.deleteForUser(SettingsService.java:399)
at com.android.providers.settings.SettingsService$MyShellCommand.onCommand(SettingsService.java:281)
at android.os.BasicShellCommandHandler.exec(BasicShellCommandHandler.java:98 )
at android.os.ShellCommand.exec(ShellCommand.java:44)
at com.android.providers.settings.SettingsService.onShellCommand(SettingsService.java:49)
at android.os.Binder.shellCommand(Binder.java:936)
at android.os.Binder.onTransact(Binder.java:820)
at android.os.Binder.execTransactInternal(Binder.java:1166)
at android.os.Binder.execTransact(Binder.java:1130)'; Code: '255'

Здравствуйте, у меня аналогичная ситуация. Мог бы кто-то помочь разобраться ребзя?
 

valeron

Новичок
Регистрация
03.10.2020
Сообщения
8
Благодарностей
1
Баллы
3

OWG

Client
Регистрация
27.12.2013
Сообщения
11
Благодарностей
0
Баллы
1
Друзья, перерыл кучу инфы, но так и не нашел пока рабочего инструмента.
Задача: проксировать виртуальные машины Memu. На каждую копию своя прокся.
Один из простых вариантов - установить в каждую виртуалку условный proxydroid, но так не подходит.
Можно заюзать proxifier, но я не нашел как с его помощью "распределять" проксирование к каждой виртуальной машине отдельно. Он просто берет и весь траф с мему валит по одной проксе.

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

radv

Client
Регистрация
11.05.2015
Сообщения
3 789
Благодарностей
1 954
Баллы
113
Задача: проксировать виртуальные машины Memu. На каждую копию своя прокся.
Один из простых вариантов - установить в каждую виртуалку условный proxydroid, но так не подходит.
А почему прокси дроид не подходит? Можете попробовать его аналоги. Виртуальные машины можно клонировать, с уже настроенными и установленными приложениями.
Если прокси http и без авторизации, то можно попробовать установить их глобально.
 
  • Спасибо
Реакции: OWG

OWG

Client
Регистрация
27.12.2013
Сообщения
11
Благодарностей
0
Баллы
1
А почему прокси дроид не подходит? Можете попробовать его аналоги. Виртуальные машины можно клонировать, с уже настроенными и установленными приложениями.
Если прокси http и без авторизации, то можно попробовать установить их глобально.
судя по моим тестам, использование приложений проксирующих внутри андроида (сам факт поднятия впн), палится теми прилами с которыми я работаю и на выходе получаю результат в разы хуже, в сравнении с тем, когда прокся работает "над" memu
 

radv

Client
Регистрация
11.05.2015
Сообщения
3 789
Благодарностей
1 954
Баллы
113
судя по моим тестам, использование приложений проксирующих внутри андроида (сам факт поднятия впн), палится теми прилами с которыми я работаю и на выходе получаю результат в разы хуже, в сравнении с тем, когда прокся работает "над" memu
тогда надо думать, как ставить отдельный прокси на процесс эмулятора.
 

sw_sw

Client
Регистрация
24.02.2017
Сообщения
769
Благодарностей
307
Баллы
63

Gang

Client
Регистрация
04.04.2010
Сообщения
579
Благодарностей
313
Баллы
63
судя по моим тестам, использование приложений проксирующих внутри андроида (сам факт поднятия впн), палится теми прилами с которыми я работаю и на выходе получаю результат в разы хуже, в сравнении с тем, когда прокся работает "над" memu
"Когда прокся работает "над" memu" - это когда через Proxifier? Или как-то по другому?
 

OWG

Client
Регистрация
27.12.2013
Сообщения
11
Благодарностей
0
Баллы
1
"Когда прокся работает "над" memu" - это когда через Proxifier? Или как-то по другому?
Да например через проксифаер. Только он не умеет распределять проксирование на каждую виртуальную машину в отдельности ( Чтоб у каждой виртуалки своя прокся была
 

Gang

Client
Регистрация
04.04.2010
Сообщения
579
Благодарностей
313
Баллы
63
Да например через проксифаер. Только он не умеет распределять проксирование на каждую виртуальную машину в отдельности ( Чтоб у каждой виртуалки своя прокся была
да. тоже столкнулся с этой проблемой. Как вариант, брать мобильную проксю на 1 поток с минимальным интервалом смены реального ip.
 

westruk

Client
Регистрация
30.03.2020
Сообщения
354
Благодарностей
113
Баллы
43
Друзья, перерыл кучу инфы, но так и не нашел пока рабочего инструмента.
Задача: проксировать виртуальные машины Memu. На каждую копию своя прокся.
Один из простых вариантов - установить в каждую виртуалку условный proxydroid, но так не подходит.
Можно заюзать proxifier, но я не нашел как с его помощью "распределять" проксирование к каждой виртуальной машине отдельно. Он просто берет и весь траф с мему валит по одной проксе.

Из идей, куда я копал - каким то образом сделать несколько виртуальный сетевых адаптеров на пк, каждый из которых будет связан со своей проксей. Ну и дальше каждую отдельную копию мему жестко привязать к таком адаптеру. Увы, пока как создать такие виртуальные сетевые адаптеры, я не нашел (
https://github.com/liulilittle/VEthernet попробуй, либо что то подобное
 

Emmett_Red

Client
Регистрация
14.09.2019
Сообщения
96
Благодарностей
9
Баллы
8
А можно пользоваться интернетом телефона с симки, что бы без этих прокси??
 

valeron

Новичок
Регистрация
03.10.2020
Сообщения
8
Благодарностей
1
Баллы
3
Здравствуйте всем! Пожалуйста помогите каким образом делать свайп?
 

Monitor

Client
Регистрация
27.12.2016
Сообщения
61
Благодарностей
37
Баллы
18
Пожалуйста помогите каким образом делать свайп?
Свайп через Appium:
int duration = 500, // длительность свайпа, чем больше - тем точнее свайп
TouchAction swipe = new TouchAction(driver);
swipe.Press(startX,startY).Wait(duration).MoveTo(endX,endY).Release().Perform();
 

valeron

Новичок
Регистрация
03.10.2020
Сообщения
8
Благодарностей
1
Баллы
3
Всем здравствуйте, подскажите почему аппиум не отображает некоторые вкладки в инстаграм при записи действий? Бесконечная загрузка идет, хотя на телефоне все отображается
 

elakeri

Client
Регистрация
23.07.2018
Сообщения
199
Благодарностей
10
Баллы
18
delete
 
Последнее редактирование:

Lampa3213

Новичок
Регистрация
13.04.2022
Сообщения
10
Благодарностей
1
Баллы
3
Привет! Вот такая проблема возникла (см. скриншот)
Голову ломаю, не могу понять, в чем дело (я нуб)
 

Вложения

Monitor

Client
Регистрация
27.12.2016
Сообщения
61
Благодарностей
37
Баллы
18
Привет! Вот такая проблема возникла (см. скриншот)
Голову ломаю, не могу понять, в чем дело (я нуб)
Ну, как минимум такая ошибка. Appium слушает порт 4725, а в кубике c# выполняется код, в котором указан другой порт: 4723. Нужно задать одинаковый порт.
 

Lampa3213

Новичок
Регистрация
13.04.2022
Сообщения
10
Благодарностей
1
Баллы
3
Пробовал. Выдаёт следующую ошибку. Телефон подключён к компьютеру. appium start работает
Ну, как минимум такая ошибка. Appium слушает порт 4725, а в кубике c# выполняется код, в котором указан другой порт: 4723. Нужно задать одинаковый порт.
 

Вложения

Lampa3213

Новичок
Регистрация
13.04.2022
Сообщения
10
Благодарностей
1
Баллы
3
Привет. Подскажите пожалуйста, из за чего может такая проблема вылезать:
 

Вложения

radv

Client
Регистрация
11.05.2015
Сообщения
3 789
Благодарностей
1 954
Баллы
113
Привет. Подскажите пожалуйста, из за чего может такая проблема вылезать:
так там даже ссылка на подробности есть. переведите текст ошибки, и понятнее станет.
 

Lampa3213

Новичок
Регистрация
13.04.2022
Сообщения
10
Благодарностей
1
Баллы
3
Не могу понять, как присвоить значение переменной ANDROID_HOME. Он пишет, что название переменной не экспортировано
так там даже ссылка на подробности есть. переведите текст ошибки, и понятнее станет.
 

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