#android #cordova #meteor
Вопрос:
я пробую свое первое приложение Meteor Cordova. Мое приложение Meteor было автономным и работало нормально. Затем я добавил часть Cordova. Когда я запускаю приложение с
meteor запускает Android-устройство
на моем мобильном устройстве, подключенном через USB-кабель, все работает нормально, и я могу получить доступ к своей локальной базе данных, которая работает на порту 3001. Вот где возникает мой вопрос, когда я пытаюсь создать приложение с помощью
папка сборки meteor build —server=http: //127.0.0.1:3000
поскольку именно там запускается мой проект meteor, когда я использую meteor run, мое приложение, похоже, не подключается.
У меня есть код Meteor.startup(function () { console.log(__meteor_runtime_config__.ROOT_URL); });
, и при запуске приложения он говорит, что он запущен http://127.0.0.1:3000 но после этого я продолжаю получать сообщение об ошибке GET http://127.0.0.1:3000/sockjs/info?cb=h_i9p49ua9 net::ОШИБКА_CONNECTION_REFUSED
Я искал документацию, но не могу найти никаких пошаговых инструкций по созданию apk, который я могу установить на свое устройство Android и подключиться к моему локальному экземпляру Meteor на моем ПК, а также к базе данных.
Просто чтобы добавить в мой config.xml файл, который я получаю, это
Ответ №1:
Я думаю, проблема в том, что ваше приложение попытается подключиться к 127.0.0.1, но это localhost — это сам телефон! Если вы просто хотите попробовать это локально, получите локальный IP-адрес вашего сервера (кроме localhost / 127.0.0.1). Это часто 192.168.1.N
бывает для некоторых N
. Под Linux вы можете использовать ip a
, чтобы увидеть все ваши IP-адреса для всех устройств. Найдите тот, который подходит для вашего ethernet или wifi-соединения (нет lo
). Используйте этот IP. Ваше Android-устройство, если оно подключено к той же сети, сможет решить эту проблему и подключиться к вашему серверу.
Комментарии:
1. Спасибо за ответ. Я пытался это сделать. Затем я столкнулся с двумя проблемами. 1. Мое приложение meteor запущено на локальном хосте, но если я перейду на свой ip: 3000, оно там не работает, так как же мой телефон узнает, где находится локальный сервер, или подразумевается, что он просто узнает? 2. Когда я создаю приложение с моим ip, я получаю это в config.xml файл «<источник доступа=» ://localhost» /> <источник доступа=» ://10.0.2.2″ />» . Есть ли где-нибудь еще, где мне также нужно изменить сервер, к которому подключено мобильное устройство?
2. Спасибо, что ваш совет сработал для телефона, а затем для сервера или meteor, я только что запустил meteor run —mobile-server 192.168.1.N .