Я пытаюсь открыть tcp-сокет от мидлета j2me на устройстве symbian до сервера сокетов windows (C #). Сервер работает и тестировался месяцами.
Теперь, когда я пытаюсь открыть сокет из мидлета
clientSocketConnection = (SocketConnection) Connector.open("socket://" + ip + ":" + port);
Это просто тайм-аут с ошибкой -34 (не удалось подключиться).
Я знаю, что у телефона есть сетевые возможности и разрешения, так как я могу открыть такие сокетные соединения между двумя телефонами (эмулированными), используя «ServerSocket» на одной стороне и на той же машине, на которой работает сервер.
Почему-то сокет J2ME не совместим с аналогом C # ....
listenSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
Любой намек на этот счет был бы очень признателен.
Кроме того, я должен использовать другой тип сокета на стороне сервера? Я не смог найти информацию о AdressFamily, SocketType или ProtocolType для сокетов J2ME.
Добавление информации в связи с последними комментариями.
Это не проблема брандмауэра, так как у меня нет брандмауэра и DMZ настроен для ip машины
Телефон (эмулированный) имеет доступ к Интернету, и когда я открываю сокет от эмулятора к другому, оба на одной и той же машине, использую мой WAN PUBLIC ip на стороне «клиента», чтобы найти «серверную» сторону, он работает.