Вверх ↑
Этот топик читают: Гость
Ответов: 1821
Рейтинг: 168
#211: 2012-10-18 21:42:12 ЛС | профиль | цитата
Neo, code_29332.txt
Массив сам инициализируется при запуске программы. А программа не работала потому, что не был указан начальный размер массива (в своей схеме, что выложил вам я выставил Array -> Size = 1024).
карма: 5

0
файлы: 1code_29332.txt [1.6KB] [362]
Ответов: 704
Рейтинг: 7
#212: 2012-10-18 23:37:16 ЛС | профиль | цитата
sаmakacd, не выходит читать данные с компа и все. Если запускаю поток - не компилируется и вылетает среда. Если место потока вешаю кнопку - ошибка в приложении. В Вашем примере у меня не отрисовывается связь потока с чтением данных и толком не могу его протестировать в оригинале.

А размер массива 0 - думал бесконечно.
карма: 0

0
Ответов: 1821
Рейтинг: 168
#213: 2012-10-19 18:17:34 ЛС | профиль | цитата
Neo, размер массива 0 используется при хранении заведомо известных строк. Вдома посмотрю что там не так.
------------ Дoбавленo в 18.17:
Neo,

#sha
Add(MainActivity,2953706,42,77)
{
}
Add(EditText,804695,140,84)
{
Left=10
Top=10
Width=245
LayoutManager="hor1"
Text="192.168.1.4"
}
Add(EditText,7114956,182,84)
{
Left=10
Top=35
Width=245
LayoutManager="hor1"
Text="1357"
}
Add(Button,10430713,42,154)
{
Left=10
Top=85
Width=70
LayoutManager="hor"
WidthMode=0
Caption="Connect"
link(onClick,6687868:doConnect,[(107,160)(107,188)])
}
Add(Button,6782545,42,189)
{
Left=85
Top=85
Width=80
LayoutManager="hor"
WidthMode=0
Caption="Disconnect"
link(onClick,6687868:doDisconnect,[])
}
Add(EditText,9815882,224,42)
{
Left=10
Top=60
Width=245
Text="hello"
Hint="Data"
}
Add(Button,9395068,42,259)
{
Left=215
Top=85
Width=40
WidthMode=0
Caption="Send"
link(onClick,14838657:doStartThread,[])
}
Add(LayoutLinear,6958181,42,119)
{
Name="hor"
Orientation=1
WidthMode=1
}
Add(TCPClient,6687868,168,182)
{
Point(SendData)
Point(ReceivedData)
link(onIOException,7713826:doShow,[])
link(onUnknownHostException,11944488:doShow,[])
link(IP,804695:Value,[(181,149)(146,149)])
link(Port,7114956:Value,[])
link(SendData,4323406:Converted,[(195,149)(230,149)])
link(ReceivedData,514351:Var1,[(202,159)])
}
Add(Converter,4323406,224,84)
{
Mode=6
link(Data,9815882:Value,[])
}
Add(ToastNotification,7713826,266,189)
{
Text="IOException error!"
}
Add(ToastNotification,11944488,224,196)
{
Text="UnknownException"
}
Add(Array,5658054,266,84)
{
Type="byte"
Size=1024
}
Add(Hub,3566382,91,224)
{
link(onEvent1,6687868:doReceiveData,[(123,230)(123,202)])
link(onEvent2,10170285:In,[])
}
Add(AlertDialog,7022587,308,231)
{
link(Message,14778579:Converted,[])
}
Add(Converter,14778579,308,182)
{
Mode=5
link(Data,514351:Var3,[(314,159)])
}
Add(GetDataEx,514351,266,154)
{
link(Data,5658054:Array,[])
}
Add(LineBreak,704421,266,231)
{
link(Out,7022587:doShow,[])
Primary=[10170285,-147,0]
}
Add(Button,16694549,42,224)
{
Left=170
Top=85
Width=40
LayoutManager="hor"
Caption="Read"
link(onClick,3566382:doEvent1,[])
}
Add(Thread,14838657,91,259)
{
link(onStartThread,6687868:doSendData,[(152,265)(152,209)])
}
Но есть минус - приложение зависает до получения входящих данных.
карма: 5

0
Ответов: 704
Рейтинг: 7
#214: 2012-10-19 19:08:25 ЛС | профиль | цитата
sаmakacd, спасибо, работает! А зависание действительно есть. Его можно как-то обойти? Новый поток, как я понял, на него не повесить...
карма: 0

0
Ответов: 1821
Рейтинг: 168
#215: 2012-10-19 19:24:14 ЛС | профиль | цитата
Neo, там как раз используется параллельный поток, правда, приложение всё равно зависает...
карма: 5

0
Ответов: 704
Рейтинг: 7
#216: 2012-10-19 20:01:39 ЛС | профиль | цитата
sаmakacd, вот так работает. Но не знаю как очищать полученные данные.
code_29337.txt
карма: 0

1
файлы: 1code_29337.txt [2.2KB] [389]
Голосовали:sаmakacd
Ответов: 1821
Рейтинг: 168
#217: 2012-10-19 20:33:52 ЛС | профиль | цитата
Neo писал(а):
sаmakacd, вот так работает.
Ага, действительно, не там поток создал
Neo писал(а):
Но не знаю как очищать полученные данные.
Array → doCreateArray.
карма: 5

0
Ответов: 1528
Рейтинг: 57
#218: 2012-10-19 21:05:05 ЛС | профиль | цитата
sаmakacd,
Add(MainActivity,2953706,112,168){
link(onCreate,11762810:doEvent1,[])
}
Add(TCPServer,11266017,210,168)
{
Port=2000
}
Add(TCPClient,4112205,210,224)
{
IP="127.0.0.1"
Port=2000
}
Add(Hub,11762810,161,168)
{
link(onEvent1,11266017:doOpen,[])
link(onEvent2,4112205:doConnect,[(189,181)(189,230)])
}

вывод 2 catch
#cpp
catch (UnknownHostException uhe2) {
} catch (IOException ioe2) {
}
------------ Дoбавленo в 20.47:
sаmakacd, пора учить пакет android.test , так разработка компонентов легче пойдёт
------------ Дoбавленo в 21.05:
ещё смущает эта пустая конструкция
#cpp
try {
} catch (IOException ioe1) {
}
карма: 0

0
Ответов: 1821
Рейтинг: 168
#219: 2012-10-19 21:12:40 ЛС | профиль | цитата
hitman249, не улавливаю смысла запускать сервер, если работы с клиентами нету А вообще, можно поправить.
------------ Дoбавленo в 21.12:
hitman249 писал(а):
android.test
Это что за зверь?
карма: 5

0
Ответов: 1528
Рейтинг: 57
#220: 2012-10-19 21:25:23 ЛС | профиль | цитата
sаmakacd писал(а):
Это что за зверь?

проверяет чтобы выхлоп соответствовал ожиданиям
туториал http://www.youtube.com/watch?v=7frRGAPrknE
карма: 0

0
Ответов: 704
Рейтинг: 7
#221: 2012-10-19 21:29:59 ЛС | профиль | цитата
Не выходит очищать массив. То есть он очищается, но тогда не выводятся данные из него. Хотя очистка идет после вывода данных.
А по таймеру если запустить очистку - ошибка приложения.
карма: 0

0
Ответов: 704
Рейтинг: 7
#222: 2012-10-22 21:26:37 ЛС | профиль | цитата
Это ошибка в компонентах или неправильный алгоритм? Пробовал разные варианты и так и не вышло нормально принимать данные
карма: 0

0
Ответов: 1821
Рейтинг: 168
#223: 2012-10-22 22:09:53 ЛС | профиль | цитата
Neo, вы о очистке массива? Если да, то я не знаю почему он не очищается. Вроде при пересоздании он должен был очистится.
карма: 5

0
Ответов: 704
Рейтинг: 7
#224: 2012-10-23 00:07:11 ЛС | профиль | цитата
sаmakacd, а Вы не пробовали у себя делать получение разных данных на том примере? После двух полученных посылок они не обновляются у меня
карма: 0

0
Ответов: 1821
Рейтинг: 168
#225: 2012-10-27 19:44:29 ЛС | профиль | цитата
Neo, извиняюсь за задержку. УМВР, ЧЯДНТ


#sha
Add(MainActivity,2953706,42,77)
{
}
Add(EditText,804695,140,84)
{
Left=10
Top=10
Width=245
LayoutManager="hor1"
Text="192.168.1.4"
}
Add(EditText,7114956,182,84)
{
Left=10
Top=35
Width=245
LayoutManager="hor1"
Text="1357"
}
Add(Button,10430713,42,154)
{
Left=10
Top=85
Width=70
LayoutManager="hor"
WidthMode=0
Caption="Connect"
link(onClick,6687868:doConnect,[(107,160)(107,188)])
}
Add(Button,6782545,42,189)
{
Left=85
Top=85
Width=80
LayoutManager="hor"
WidthMode=0
Caption="Disconnect"
link(onClick,6687868:doDisconnect,[])
}
Add(EditText,9815882,224,42)
{
Left=10
Top=60
Width=245
Text="hello"
Hint="Data"
}
Add(Button,9395068,42,259)
{
Left=215
Top=85
Width=40
WidthMode=0
Caption="Send"
link(onClick,14838657:doStartThread,[])
}
Add(LayoutLinear,6958181,42,119)
{
Name="hor"
Orientation=1
WidthMode=1
}
Add(TCPClient,6687868,168,182)
{
Point(SendData)
Point(ReceivedData)
link(onIOException,7713826:doShow,[])
link(onUnknownHostException,11944488:doShow,[])
link(IP,804695:Value,[(181,149)(146,149)])
link(Port,7114956:Value,[])
link(SendData,4323406:Converted,[(195,149)(230,149)])
link(ReceivedData,514351:Var1,[(202,159)])
}
Add(Converter,4323406,224,84)
{
Mode=6
link(Data,9815882:Value,[])
}
Add(ToastNotification,7713826,266,189)
{
Text="IOException error!"
}
Add(ToastNotification,11944488,224,196)
{
Text="UnknownException"
}
Add(Array,5658054,266,84)
{
Type="byte"
Size=1024
}
Add(Hub,3566382,91,224)
{
link(onEvent1,6687868:doReceiveData,[(123,230)(123,202)])
link(onEvent2,10170285:In,[])
}
Add(AlertDialog,7022587,308,231)
{
link(Message,14778579:Converted,[])
}
Add(Converter,14778579,308,182)
{
Mode=5
link(Data,514351:Var3,[(314,159)])
}
Add(GetDataEx,514351,266,154)
{
link(Data,5658054:Array,[])
}
Add(LineBreak,7753844,266,231)
{
link(Out,7022587:doShow,[])
Primary=[10170285,-147,0]
}
Add(Button,16694549,42,224)
{
Left=170
Top=85
Width=40
LayoutManager="hor"
Caption="Read"
link(onClick,3566382:doEvent1,[])
}
Add(Thread,14838657,91,259)
{
link(onStartThread,6687868:doSendData,[(152,265)(152,209)])
}
карма: 5

0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)