phonegap Weinre не находит целей

Я пытаюсь включить weinre для отладки, но проблема в том, что weinre не находит цели.

Вот что я делаю:

  1. установил weinre с помощью команды nodejs: npm install weinre -g

  2. подключите мое устройство Android (смартфон Huawaei) через USB-кабель и включите режим отладки на телефоне Android.

  3. запустить weinre, команда: weinre --boundHost 192.168.2.1

index.html выглядит так:

<!doctype html>
 <html>
  <head>
   <title>tittle</title>

    <!-- Weinre testing for remote debug with physical device -->
     <script src="http://192.168.2.1:8080/target/target-script-min.js#anonymous"></script>  

    <script>window.location='./main.html';</script>
   <body>
   </body>
 </html>

в config.xml я добавляю

 <access origin="http://192.168.2.1:8080/*" />

наконец, на main.html (который является настоящей стартовой страницей) я добавляю:

<script type="text/javascript" charset="utf-8" src="cordova.js"></script>
  • Затем я архивирую все файлы, которые нужны приложению, и загружаю их в сборку phonegap. после того, как phonegap создаст все приложения, я сканирую штрих-код с помощью мобильных устройств. Теперь устройство начинает загружать приложение.

Я запускаю приложение на устройстве. И посетите сайт

http://192.168.2.1:8080/client/#anonymous

=> Приложения запускаются, как и должно быть, но сайт weinre-server показывает «Цель: НЕТ»

Я что-то пропустил? Я пробовал этот процесс на firefox и chrome. Я почти уверен, что мобильное устройство не использует «тот же локальный хост», что и мой настольный компьютер.

свойства сервера weinre:

введите здесь описание изображения


person Phil LA    schedule 15.07.2014    source источник
comment
есть какое-нибудь решение для этого?   -  person HardikT    schedule 12.12.2016


Ответы (2)


Я встретил тот же вопрос, потому что я использую «localhost: 8080/target/target-script-min.js#anonymous», а не реальный IP-адрес при импорте скрипта. когда я использовал реальный ip, цель была найдена

person user3859162    schedule 21.07.2014
comment
Поскольку я разместил этот вопрос, я не могу вам помочь, извините. но в моем случае это не работает ... даже с 192.168.2.1 вместо localhost: 8080, как вы упомянули - person Phil LA; 22.07.2014
comment
Это сработало для меня, когда я пытался отлаживать iOS Chrome и не мог найти цель (не подключаясь). Я использовал 192.168.1.102:8080 вместо localhost:8080. IP-адрес: 192.168.1.102 является сетевым адресом моего Mac из Системных настроек -> Сеть. - person nicholaswmin; 11.11.2015

Правильная конфигурация белого списка: <content src="http://192.168.2.1:8080/*" />

Кроме того, если у вас есть метатег Content-Security-Policy, вам нужно будет установить default-src * или, по крайней мере, добавить http://* так, чтобы этот документ о структуре телефонной связи. <meta http-equiv="Content-Security-Policy" content="default-src * ; script-src 'self' 'unsafe-inline' 'unsafe-eval' *; style-src 'self' 'unsafe-inline' *; media-src *; img-src * 'self' data: file: cdvfile: http: https:; frame-src http: https: gap: cdvfile:; connect-src *">

<meta http-equiv="Content-Security-Policy" content="default-src 'self' http://*; script-src 'self' 'unsafe-inline' 'unsafe-eval' *; style-src 'self' 'unsafe-inline' *; media-src *; img-src * 'self' data: file: cdvfile: http: https:; frame-src http: https: gap: cdvfile:; connect-src *">

person TaeKwonJoe    schedule 20.03.2018