Android Tutorial Android Network Tutorial

Status
Not open for further replies.

krsrn

Member
Licensed User
Lets start from the beginning.
Why do you need to connect to an IP in ServerSocket1_NewConnection?
The socket is already connected.
Connecting within the Active_Create Screen caused no connection to be established at all. Although it compiled the connected status was not shown.
 

krsrn

Member
Licensed User
I have indeed started with the orginal Example.

Below is my Create Function and Connected Function. However the connection is refused. I thought maybe it is an issue with the port being blocked by my Firewall however upon trying this still no joy.

Sub Activity_Create(FirstTime As Boolean)
If FirstTime Then
Timer1.Initialize("Timer1", 200)
File.MakeDir(File.DirRootExternal, "android")
End If

Socket1.Initialize("Socket1")
Socket1.Connect("127.0.0.1", 5007,0)

Activity.LoadLayout("1")
End Sub

Sub Socket1_Connected (Successful As Boolean)

If Successful = False Then
Msgbox(LastException.Message, "Error connecting")
Return
Else
ToastMessageShow("Connected", True)
End If

Socket1.Close

End Sub
 

krsrn

Member
Licensed User
Can you clarify please?

My understanding was that if I specify the connection 127.0.0.1. It will create a loop back connection therefore allowing me to connect to my desktop machine from my device.

I will then be able to send a file from the server application running on my desktop machine to be recieved from my device.

The server application is listening on for connections on 127.0.0.1, 5007 therefore if I do not make a connection in the coding where do I make the connection?
 

Erel

Administrator
Staff member
Licensed User
The device is not part of the desktop. 127.0.0.1 will point to the device itself.
You should find the server IP and connect to it. Note that it is easier to have the device act as the server. Windows firewall will not allow you to make incoming connections without changing the configuration.

You should also check B4AServer it solves many of these problems.
 

Amateurtje

Member
Licensed User
simple transfer

I have been looking through this thread but I do not seem to get it. I actually want to do some very simple thing: Send to Ipadress 192.168.1.20 with port 1001 a "1 12". The ""1" is the adres and the 12 is the value I want to send which can vary.
Secondly, After sending "50 50" (see above) the same Ip adres and port starts to send a lot of data. This string of data I need to have to do some further stuff.

Who can give me a start?

With the socket I do not see how to catch the incoming stream or how to send a stream.

Sorry, I am very , very new to B4Android. I have a little VB background.
 

Amateurtje

Member
Licensed User
hi Erel,

It is true, I am still a unlicensed user while I want to see if I can do what I need to do.
The trial version is indeed very limited in which it is impossible to evaluate the package to see if it can do what it is supposed to.
For example a program like picbasic (which I bought after eval also) has a nice working trial version.
 
Last edited:

konisek

Member
Licensed User
reconnect

I succefully use:
B4X:
Sub Button1_Click 'connect
   Socket1.Initialize("Socket1")    'Set correct ServerIp  
   Socket1.Connect(EditText1.Text,EditText2.Text,3000)' IP, Port, Timeout
   ProgressDialogShow("Connecting...")
End Sub
and after running the code I disconnect with:
B4X:
Sub Button2_Click
   Socket1.Close   
End Sub
Then I want to connect over again but always get refused. The only way is to use:
B4X:
Sub Button4_click
ExitApplication
End Sub
and then start the app over. Why can't I connect again?
 

konisek

Member
Licensed User
Sometimes it connects again immediately, sometimes even a 30 seconds pause does not help. I solved it by not disconnecting from the socket, (L)
 

rayzrocket

Member
Licensed User
Socket.ResolveHost vs. ABwifiinfo.SSID

Is SSID the same as 'host name'(used as input in socket.resolvehost(hostname)) ?? (sorry for the dumb question)

I would like to make a network connection (on Wifi) by first presenting the Android user with a list of connected Wifi network SSID(names) and then making an asyncstreams I/O connection via the socket.connect.
 

electro179

Active Member
Licensed User
I have two big problem

Hello

I have got 2 problems

1) With the udp socket.
The event PacketArrived doesn't work if the address ip is a broadcast address.
If I send a message from my pc to android in using 192.168.1.3 no problem
but the message will never come if the address is 192.168.1.255

2) I create a udpsocket in the activity but I'd like use this even socket in next activity. The event PacketArrived doesn't work in a other activity.
If I close the socketwith udpsocket.close I can't create again the socket with the even port.

have you a solution for these problem ?
 

electro179

Active Member
Licensed User
hi

sorry for duplicate message

1) if I send the some message but to a other pc. no problem

2) I create the socket with the service and the function Sub UDP_PacketArrived i also into service
 
Status
Not open for further replies.
Top