Программно сделать скриншот моего приложения React Native через appetize.io - PullRequest
0 голосов
/ 27 мая 2018

Я хочу делать снимок экрана моего приложения React Native один раз в день программным способом.Он будет выполняться заданием cron на удаленном сервере.

Самый простой способ, который я нашел, заключается в следующем:

  • загрузить мое приложение на appetize.io (если интересно, это здесь )
  • запустить браузер без головы, который загружает вышеуказанную ссылку (я использую кукловод)
  • сказать кукловоду подождать 10 секунд (для загрузки приложения) и взятьснимок экрана или лучше отправьте window.postMessage('saveScreenshot', '*') согласно сообщениям xDoc api . *1014*.

. Единственной проблемой является то, что в какой-то момент приложение отображает экран «Местоположение запроса»:

enter image description here

И я не могу сказать кукольнику программным нажатием на эту кнопку (или я могу?).Таким образом, скриншот, который я получаю после 10 секунд, выше.Есть метод xDoc mouseclick(x, y) в документах аппетита, но он кажется очень хакерским.

Любая идея, как я могу обойти это всплывающее окно запроса местоположения?

PS: Я также исследовал следующие идеисделать снимок экрана приложения RN:

  • реагировать-родной-веб: работал после удаления некоторого кода только для мобильных устройств, но макет для скриншота был очень сломан, поэтому не преследовал
  • запустите симулятор (эмулятор андроида может быть проще) на удаленном сервере и скажите ему сделать снимок экрана.Не очень много в этом разбирался, но это значит более сложный.

1 Ответ

0 голосов
/ 25 августа 2018

Для людей, интересующихся моим ответом, я наконец-то использовал метод xDoc mouseclick(x, y), чтобы нажать кнопку Разрешить.

Чтобы увидеть полный код, посмотрите этот файл: https://github.com/shootismoke/buffer-bot/blob/master/src/getScreenshot.js

...