ошибка cordova: устройство все еще подключается [дубликат]

Javascript не компилируется ни во что. Он «оценивается» во время выполнения, точно так же, как PHP & amp; Рубин. Поэтому это скриптовый язык, как PHP / Ruby. (это официальное имя на самом деле является ECMAScript).

«Модель», которой придерживается Node, немного отличается от PHP / Ruby. Node.js использует «цикл событий» (единственный поток), который имеет одну цель - быстро принимать сетевые запросы и обрабатывать их, и по какой-либо причине он сталкивается с операцией, которая занимает некоторое время (запрос API, запрос базы данных - в основном что-либо, связанное с IO (ввод / вывод)), он передает это на фоновый «рабочий» поток и уходит, чтобы сделать что-то еще, пока рабочий поток ждет завершения длинной задачи. Когда это произойдет, основной «цикл событий» примет результаты и продолжит их решать.

PHP / Ruby после модели потоковой передачи. По существу, для каждого входящего сетевого запроса сервер приложений запустит изолированный поток или процесс для обработки запроса. Это не очень хорошо масштабируется, и подход Node упоминается как одна из его основных сильных сторон по сравнению с этой моделью.

Асинхронный означает безстоящий и что соединение является постоянным, а синхронным является (почти) противоположное.

No. Синхронные инструкции завершаются в натуральном порядке, от первого до последнего. Асинхронные команды означают, что если шаг в потоке программы занимает относительно много времени, программа продолжит выполнение операций и просто вернется к этой операции по завершении.

Может ли JavaScript быть превращен в синхронный язык?

Некоторые операции в JavaScript синхронны. Другие асинхронны. Например:

Операции блокировки:

for(var k = 0; k < 1; k = k - 1;){
  alert('this will quickly get annoying and the loop will block execution')
alert('this is blocked and will never happen because the above loop is infinite');

Асинхронный:

jQuery.get('/foo', function (result) { alert('This will occur 2nd, asynchronously'); });
alert('This will occur 1st. The above operation was skipped over and execution continued until the above operation completes.');
12
задан Shashank Agrawal 9 July 2018 в 07:03
поделиться

2 ответа

Это ошибка rootova-android , потому что Google, возможно, изменил сообщение об ошибке при попытке запустить приложение.

Он уже исправлен, но еще не выпущен

Я думаю, что это сработает, если вы примените , этот измените себя на yourAppName/platforms/android/cordova/lib/emulator.js

Изменить

if ((error && error.message && (error.message.indexOf('not found') > -1)) || (error.message.indexOf('device offline') > -1))

-

if ((error && error.message && (error.message.indexOf('not found') > -1)) || (error.message.indexOf('device offline') > -1) || (error.message.indexOf('device still connecting') > -1))

22
ответ дан jcesarmobile 16 August 2018 в 10:18
поделиться
  • 1
    Я сейчас пытаюсь выяснить, исправляет ли он проблему – Noah Tanenholtz 28 June 2018 в 14:32
  • 2
    Эмулятор загружается немного медленнее, но это исправило проблему, большое вам спасибо! – Noah Tanenholtz 28 June 2018 в 15:48
  • 3
    Это сработало для меня. У меня была аналогичная проблема, но когда у меня было несколько AVD, установленных на моей машине. Он работал нормально, когда был установлен только один AVD. – AsitK 30 July 2018 в 13:29
  • 4
    Для тех, кто устал от этого в своих сценариях развертывания, используйте: wget https://raw.githubusercontent.com/gegenokitaro/cordova-android/8d497784ac4a40a9689e616cd486c4ed07d3e063/bin/templates/cordova/lib/emulator.js -O platforms/android/cordova/lib/emulator.js для его автоматизации. – Fmstrat 1 August 2018 в 13:33
  • 5
    thx man, я долго искал это. – user1518308 12 August 2018 в 17:16

Другим обходным решением является запуск эмулятора из студии Android, а затем запуск команды cordova для запуска приложения. Таким образом, кордова обнаруживает, что эмулятор уже запущен, и он избегает состояния гонки. Спасибо!

7
ответ дан coldspeed 16 August 2018 в 10:18
поделиться
  • 1
    Я попытаюсь посмотреть, работает ли это. Если это так, есть способ исправить состояние гонки, поэтому мне не нужно постоянно работать в Android Studio? – Noah Tanenholtz 25 June 2018 в 04:22
  • 2
    Была ли добавлена ​​конфигурация решения в config.xml & lt; имя предпочтительности = "loadUrlTimeoutValue" значение = & Quot; 700000 & Quot; / & GT; работал на вас? Я пробовал это решение, но он не работал для меня. Я упомянул об этом в своем предыдущем решении, но @coldspeed отредактировал мой комментарий – Pranit 26 June 2018 в 15:45
  • 3
    Хорошо, я сделал это при значении = "7000" лучше ли это на 700000? Я все еще не думаю, что это решит проблему – Noah Tanenholtz 26 June 2018 в 16:18
  • 4
    Есть ли что-нибудь еще, что вы предложите сделать, чтобы попытаться исправить проблему? – Noah Tanenholtz 26 June 2018 в 19:29
  • 5
    В настоящее время нет, но если я найду что-то, вы узнаете. – Pranit 2 July 2018 в 20:34
Другие вопросы по тегам:

Похожие вопросы: