Я сейчас разрабатываю приложение Apache Cordova с Ionic Framework, которое должно взаимодействовать через WebSocket, и я использую для него библиотеку Socket.Io. Теперь, когда я запускаю его в своем настольном браузере, все работает нормально, но когда я создаю Android и тестирую его на своем смартфоне, он не работает.Socket.IO с Cordova не работает на устройстве
Мой сервер выглядит следующим образом:
var app = require('express')();
var server = require('http').Server(app);
var io = require('socket.io')(server);
server.listen(8200, '192.168.0.127', function() {
console.log('Server listening...');
});
io.listen(server);
io.on('connection', function(socket) {
socket.emit('init', data);
});
И так Ионные дружит с AngularJS мой клиент контроллер выглядит следующим образом:
.controller('AppCtrl', function($rootScope, $scope, ServerUrl) {
var socket = io.connect(ServerUrl.serverUrl()); // ServerUrl: 'http://192.168.0.127:8200'
socket.on('init', function(data) {
// something
});
Я включил скрипт клиента Socket.io в моем индексе. html head вот так:
<script src="lib/socket.io/socket.io.min.js"></script>
Когда я удаляю отладочную версию приложения, он повторяет это повторно с различными параметрами т:
Failed to load resource: net::ERR_ADDRESS_UNREACHABLE http://192.168.0.127:8200/socket.io/?EIO=3&transport=polling&t=1431079993172-0
Я тщательно обыскали каждый связанный с этим вопрос здесь, но они не решить мою проблему. Мне действительно нужно, чтобы эта работа работала и была бы признательна за любую помощь.
Заранее благодарен.
Ваш смартфон работает самостоятельно ** Интернет ** или ** ** **, который подключен к рабочему столу; – vijay
@vijay, из образца, похоже, что он находится в локальной сети. Но это не имеет значения. – Keval
@ farshad90, Попробуйте предоставить абсолютный путь, включая 'socket.io.min.js'. – Keval