Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Вячеслав_1988
0 / 0 / 0
Регистрация: 16.10.2015
Сообщений: 21
#1

Неполадки с сокет-соединением - Программирование Android

10.12.2015, 18:53. Просмотров 208. Ответов 4
Метки нет (Все метки)

Здравствуйте, господа!
Есть сервер на VB, который должен принимать/отправлять сообщения Андроиду. Пока что могу только отправлять сообщения от клиента серверу и то ограниченные (кириллица не передается из-за кодировки), однако, как только в строке
msg1 = dataInputStream.toString();
меняю toString() на readUTF() либо любое другое значение, сообщения не отображаются на сервере.
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
package com.example.client_1;
 
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.Socket;
import java.net.UnknownHostException;
 
import android.app.Activity;
import android.os.Bundle;
import android.os.Handler;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
 
public class MainActivity extends Activity {
    
    EditText etSend;
    TextView tvCon, tvRes;
    Button btnCon;
    Socket client = null;
    int cPort = 6574;
    String  msg1;
    Handler h;
    
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        etSend = (EditText)findViewById(R.id.etSend);
        btnCon = (Button)findViewById(R.id.btnCon);
        tvRes = (TextView)findViewById(R.id.tvRes);
        tvCon = (TextView)findViewById(R.id.tvCon);
        tvCon.setText("Cotrol Connect to Port:" + cPort);
 
        h = new Handler();
 
    Thread t = new Thread (new Runnable(){
        public void run(){
 
            DataInputStream dataInputStream = null;
    
    try 
    {
        client = new Socket ("10.0.2.2", cPort);
        
        dataInputStream = new DataInputStream (client.getInputStream());
        msg1 = dataInputStream.toString();
        h.post(tvResCh);
        
        OnClickListener oclS = new OnClickListener(){
            DataOutputStream dataOutputStream = null;
            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                try {
                dataOutputStream = new DataOutputStream (client.getOutputStream());
                String sendText = etSend.getText().toString();
 
                dataOutputStream.writeBytes(sendText);
                dataOutputStream.flush();
                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
            }
            
        };
        btnCon.setOnClickListener(oclS);
    }
    catch (UnknownHostException e)
    {
        tvCon.append('\n' + "Error" + e.getMessage());
        e.printStackTrace();
    }
    catch (IOException e)
    {
        tvCon.append('\n' + "Error" + e.getMessage());
        e.printStackTrace();
    }
        }
        
    });
    t.start();
 
    }
    Runnable tvResCh = new Runnable() {
        public void run(){
            tvRes.setText(msg1.toString());
        }
    };
 
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.12.2015, 18:53     Неполадки с сокет-соединением
Посмотрите здесь:

Почему не пересоздаётся сокет? - Программирование Android
Почему не пересоздаётся сокет при том что я его заранее полностью освобождаю, если он естественно создан? if(socket!= null){ ...

Исходники сервиса с сокет-клиентом - Программирование Android
Нужно написать подобное и не хочу писать все с нуля... Изобретать велосипед... Может подобное уже есть в опенсорсах? Нужно: 1)...

Подключение android-клиента через сокет - Программирование Android
К осуществить соединение между андроид-клиентом и сервером посредством сокета? Сокет требует ip-адрес и порт. Но сервер компьютера...

Как заставить сокет клиента слушать данные с сервера постоянно? - Программирование Android
есть такой клиент import android.os.AsyncTask; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; ...

TP-LINK WR941N v2/v3 неполадки с проводным соединением - Сетевое оборудование
Несколько раз в день пропадает подключение к роутеру, иногда пишет, что кабель не подключен, а иногда соединение ограничено. Перетыкаю...

4 планки Apacer DDR3 по 4Gb/1333MHz от старой МВ сокет 775 могу ли я их использовать на сокет 2011 - Оперативная память
недавно решил перейти с LGA775 на LGA2011. Финансы урезаны поэтому пока приобрёл только процессор Intel Core i7 - 3820 oem, 3.60GHz/ 10 MB/...

Сокет 775 к Сокет 754 - Охлаждение
Здравствуйте, дорогие форумчане! Извините за тупой вопрос, но можно ли кулер 775 сокета ставить на сокет 754 ? Просто кулер 754 не...

Соединением с сервером БД - Visual Basic .NET
Немогу понять почему вылетает с ошибка "Истекло время ожидания. Время ожидания истекло до завершения операции или сервер не отвечает." ...

Проблема с соединением к БД - Java Сети
БД Oracle, вызываю простейший select из сервлета в JDeveloper'е. Потом произвожу вывод. В последнее время часто вылазит исключение: ...

Проблемы с беспроводным соединением. - Wi-Fi
Здравствуйте!Возникла такая проблема. 18 декабря вечером вдруг пропал интернет.У меня ноутбук и Модем VDSL2 c модулем Wi-Fi для...

Перебои с интернет-соединением - Удаление вирусов
Здравствуйте. Последние 4 дня идут очень частые перебои оединения с интернетом. Фактически его нет, полчаса стабильной работы - редкость....

глюк с оракловским соединением - Базы данных
Возникла такая проблема (причем не первый раз), Стоит Оракл на др. сервере (раздельно с интеренетовским), через всякие SQL Worksheet и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Вячеслав_1988
0 / 0 / 0
Регистрация: 16.10.2015
Сообщений: 21
10.12.2015, 18:58  [ТС]     Неполадки с сокет-соединением #2
Вот коды для VB6 и Android.
Вложения
Тип файла: rar коды.rar (2.13 Мб, 1 просмотров)
dajver
408 / 272 / 18
Регистрация: 18.09.2010
Сообщений: 1,106
10.12.2015, 19:56     Неполадки с сокет-соединением #3
https://github.com/dajver/WorkingSoc...nActivity.java вот так сделайте, один в один, поменяйте только адрес куда обращаться, и все будет ок
Вячеслав_1988
0 / 0 / 0
Регистрация: 16.10.2015
Сообщений: 21
10.12.2015, 23:03  [ТС]     Неполадки с сокет-соединением #4
Спасибо огромное!
Завтра попробую и отпишусь.
Вячеслав_1988
0 / 0 / 0
Регистрация: 16.10.2015
Сообщений: 21
27.12.2015, 18:20  [ТС]     Неполадки с сокет-соединением #5
Здравствуйте.
Сделал все по вашему примеру, однако, получить текст от сервера в TextView клиента так и не удалось. Сервер сообщение отправляет 100%, т.к. сделал клиент и для Вижуал Бэйсик, там все приходит и отправляется.
У вас как, все работает?
Yandex
Объявления
27.12.2015, 18:20     Неполадки с сокет-соединением
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru