Java: управление браузером через процесс - PullRequest
1 голос
/ 03 августа 2011

Я удаленно управляю приложением Java на ПК через телефон Android, и мне нужно было мое приложение, чтобы открыть браузер по команде телефонов, в данном случае chrome.Я создал «Процесс» для Chrome, открывая определенный адрес.Тем не менее, я должен иметь возможность предоставлять инструменты на телефоне Android для управления веб-страницей, такие как прокрутка.Могу ли я программно отправить команду chrome для прокрутки из приложения на ПК, содержащего Process?

Извините, возможно, это неясно, но единственное соединение, которое телефон Android имеет с программой, - через сокет.Он используется только в качестве пульта дистанционного управления для другого Java-приложения на ПК с собственным экраном.

Ответы [ 4 ]

2 голосов
/ 03 августа 2011

Я не думаю, что существует чистое решение.

Но я могу предложить следующие направления:

(1) попытаться исследовать собственный Chrome API.Если у него есть такая способность, назовите его JNI.

(2) Попробуйте использовать класс java.awt.Robot.Это позволяет имитировать активность пользователя, например, щелчки мышью.К сожалению, он не позволяет вам найти какое-либо окно за пределами вашего приложения, поэтому трудно решить, где выполнить щелчок.

(3) Вы можете создать прокси-сервер и открыть браузер, чтобы перейти кцелевой URL через прокси.Прокси-сервер вставит на страницу ваш javascript, который будет связываться с сервером.Приложение, которое открывает браузер, будет отправлять команды на сервер.Вставленный вами javascript получит эти команды, используя AJAX, и выполнит их.JavaScript может прокручивать окно браузера, поэтому теоретически вы можете реализовать это.

2 голосов
/ 03 августа 2011

Если вы можете выбрать целевую вкладку, которой хотите управлять, и отредактировать адресную строку, вы можете отправить команду 'javascript: scrollTo (x, y)'.Я только что проверил его на этой странице, и он, кажется, работает нормально, заменив то, что я набрал, на оригинальный адрес страницы.

1 голос
/ 03 августа 2011

Можно ли программно отправить команду для chrome для прокрутки из приложения на ПК, содержащего процесс?

Не напрямую.То, что вы могли бы сделать, - это создать своего рода веб-сервис, который находится между клиентом Android и страницей, на которую клиент Android может отправлять команды, и страница может периодически опрашивать через вызовы AJAX, чтобы узнать, чего хочет клиент.Это был бы чистый способ DIY, который работал бы в других браузерах, кроме Chrome.

0 голосов
/ 03 августа 2011

Вы можете использовать приложения просмотра VNC для этого.

http://code.google.com/p/android-vnc-viewer/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...