radv
Client
- Регистрация
- 11.05.2015
- Сообщения
- 3 788
- Благодарностей
- 1 952
- Баллы
- 113
для проверки значения сделайте вывод в лог. увидите правильно формирует значение или нет."//*[@text='{0}₽']"так?
для проверки значения сделайте вывод в лог. увидите правильно формирует значение или нет."//*[@text='{0}₽']"так?
можете мне в ТГ написать? не получается пройти этот момент. Нужна консультация ваша. По оплате в ТГ пообщаемсядля проверки значения сделайте вывод в лог. увидите правильно формирует значение или нет.
СТРАДАЙ!!!Где найти мануал по работе? Конкретно интересует как правльно ловить пуш уведомления?
Я Энтерпрайз отверткой уже наверное месяца 4 ковыряю чтобы проект свой воссоздать, что на постере сделан. И до этого у меня на обычном дройде для memu был хороший опыт. Т.е. не с нуля залез. А до этого сам еще телефоны ранее шил и рутил. И все равно много много месяцев чтобы более или менее чисто с постера перенести то, что и так известно как должно работать.Очень печально..
Решил так:применить правильно String.Format
string xpath = String.Format(@"//*[@text=""{0} ₽""]",project.Variables["myPrice"].Value);
var myTov = droid2.FindElementByXPath(xpath);
if(myTov != null)
{
project.SendInfoToLog("Нашли свой товар",true);
myTov.Click();
Thread.Sleep(3000);
}
мой телеграм в темах из подписи естьможете мне в ТГ написать? не получается пройти этот момент. Нужна консультация ваша. По оплате в ТГ пообщаемся
на 11 андройде 9а рут это пляски с бубном лучше на 10-й андройд перепрошейсудя по всему нет.. разбираюсь как сделать. как его сделать для android 11 тел redmi 9a ?
пробовал с помощью kingoroot, пишет что рутирование не удалось
Ошибка при проверке наличия Root. Исправим.Кто вкурсе почему идет такой сбой. Рут права есть. Шаблон с последнего обновления сохранения яндекс и гугл аккаунтов
а когда ждать испровления спциально ради проверки этой темы купил дройд на месяц. просто второй раз ради проверки покупать не хочется как его не купишь он валяется. Если эта тема рабочая тогда его стоит покупать если нет то даром не нужен
Понятно тут. Есть какая-то возможность определить верзнюю границу экрана?
adb shell wm sizeПонятно тут. Есть какая-то возможность определить верзнюю границу экрана?
Работает) оч помогли) есть какая-либо возможность или отключить, или отслеживать обновления memu, чтобы делать паузу когда они происходят? как понос просто сваливаются и стопорят весь шаблон))adb shell wm size
эмули только для тестов реалы рулятРаботает) оч помогли) есть какая-либо возможность или отключить, или отслеживать обновления memu, чтобы делать паузу когда они происходят? как понос просто сваливаются и стопорят весь шаблон))
это понятно - что на телефоне все нормально будет работать. На мему есть такая возможность?эмули только для тестов реалы рулят
какие именно обновления имеются введу эмулятора или самого мемуРаботает) оч помогли) есть какая-либо возможность или отключить, или отслеживать обновления memu, чтобы делать паузу когда они происходят? как понос просто сваливаются и стопорят весь шаблон))
обновления которые ставит мему для приложений, которые установлены ужекакие именно обновления имеются введу эмулятора или самого мему
тут 2 варианта либо дождаться прогрузки либо через гугл отключить обновыобновления которые ставит мему для приложений, которые установлены уже
это команда определения размера экранаadb shell wm size
string adbPath = @"C:\Program Files\ZennoLab\EN\ZennoDroid Pro\2.3.5.0\Progs\adb.exe";
int scrollDurationMs = 500;
ProcessStartInfo scrollProcessStartInfo = new ProcessStartInfo
{
FileName = adbPath,
Arguments = $"shell input swipe 500 500 500 1000 {scrollDurationMs}",
UseShellExecute = false,
CreateNoWindow = true
};
ProcessStartInfo checkProcessStartInfo = new ProcessStartInfo
{
FileName = adbPath,
Arguments = "shell getevent -lt",
RedirectStandardOutput = true,
UseShellExecute = false,
CreateNoWindow = true
};
while (true)
{
project.SendInfoToLog("Выполняем прокрутку вверх...");
using (Process scrollProcess = new Process())
{
scrollProcess.StartInfo = scrollProcessStartInfo;
scrollProcess.Start();
scrollProcess.WaitForExit();
}
bool reachedTop = false;
using (Process checkProcess = new Process())
{
checkProcess.StartInfo = checkProcessStartInfo;
checkProcess.Start();
StreamReader reader = checkProcess.StandardOutput;
string line;
while ((line = reader.ReadLine()) != null)
{
// Обработка вывода для определения достижения верхней границы экрана
if (line.Contains("ABS_MT_POSITION_Y") && line.Contains("value"))
{
// Используем регулярное выражение для поиска значения ABS_MT_POSITION_Y
Match match = Regex.Match(line, @"value (\d+)");
if (match.Success)
{
int positionY = int.Parse(match.Groups[1].Value);
project.SendInfoToLog($"Значение ABS_MT_POSITION_Y: {positionY}");
if (positionY == 0)
{
project.SendInfoToLog("Верхняя граница экрана достигнута");
reachedTop = true;
break;
}
}
}
}
checkProcess.WaitForExit();
}
if (reachedTop)
{
break; // Выход из цикла, если достигнута верхняя граница экрана
}
project.SendInfoToLog("Пауза перед следующей прокруткой...");
Thread.Sleep(1000);
}
Такой вопрос 10-11 андройд работает номрально, а 13 что то не работает в дройде хотя через апиум напрямую проблем нет
Если у тебя есть четкие координаты то зачем пользоваться кодом который не подходит.это команда определения размера экрана
Я нашел такой способ, но он корректно не работает:
прокрутка делается только 1 раз и потом зависает на втором циклеC#:string adbPath = @"C:\Program Files\ZennoLab\EN\ZennoDroid Pro\2.3.5.0\Progs\adb.exe"; int scrollDurationMs = 500; ProcessStartInfo scrollProcessStartInfo = new ProcessStartInfo { FileName = adbPath, Arguments = $"shell input swipe 500 500 500 1000 {scrollDurationMs}", UseShellExecute = false, CreateNoWindow = true }; ProcessStartInfo checkProcessStartInfo = new ProcessStartInfo { FileName = adbPath, Arguments = "shell getevent -lt", RedirectStandardOutput = true, UseShellExecute = false, CreateNoWindow = true }; while (true) { project.SendInfoToLog("Выполняем прокрутку вверх..."); using (Process scrollProcess = new Process()) { scrollProcess.StartInfo = scrollProcessStartInfo; scrollProcess.Start(); scrollProcess.WaitForExit(); } bool reachedTop = false; using (Process checkProcess = new Process()) { checkProcess.StartInfo = checkProcessStartInfo; checkProcess.Start(); StreamReader reader = checkProcess.StandardOutput; string line; while ((line = reader.ReadLine()) != null) { // Обработка вывода для определения достижения верхней границы экрана if (line.Contains("ABS_MT_POSITION_Y") && line.Contains("value")) { // Используем регулярное выражение для поиска значения ABS_MT_POSITION_Y Match match = Regex.Match(line, @"value (\d+)"); if (match.Success) { int positionY = int.Parse(match.Groups[1].Value); project.SendInfoToLog($"Значение ABS_MT_POSITION_Y: {positionY}"); if (positionY == 0) { project.SendInfoToLog("Верхняя граница экрана достигнута"); reachedTop = true; break; } } } } checkProcess.WaitForExit(); } if (reachedTop) { break; // Выход из цикла, если достигнута верхняя граница экрана } project.SendInfoToLog("Пауза перед следующей прокруткой..."); Thread.Sleep(1000); }
я пробовал сделать через команду: adb shell dumpsys display и обработать ее вывод, но оказалось что на memu не меняется параметр: mDisplayHeight от слова "совсем", он всегда 0...
Вам нужно пролистать до верха экрана?project.SendInfoToLog("Верхняя граница экрана достигнута");
var driver = instance.DroidInstance.AppiumDriver;
driver.FindElementByUiAutomator("new UiScrollable(new UiSelector().scrollable(true)).scrollToBeginning(10)");
Изображение не захватывает или какая-то другая проблема?Такой вопрос 10-11 андройд работает номрально, а 13 что то не работает в дройде хотя через апиум напрямую проблем нет
Изображение не захватывает или какая-то другая проблема?
Изображение не захватывает или какая-то другая проблема?
Все помоглоAppium захватывает картинку через MJPEG (можно включить на вкладке настроек, но это не рекомендуется)
Лучше выполните экшен c#
И попробуйте еще раз подключиться к девайсу.C#:instance.DroidInstance.Input.Shell("settings put global scrcpy_encoder OMX.google.h264.encoder");