Bob Kerns and WoodManEXP  ,thank you very much.

Now ,I know what should I do next step,  Maybe ,I need more information on
network  than  android platform itself.
so ,I 've decided to read more about  network online. I am engaging in sip
development on android platfor ,  and I have wrote a sample  in sip, so I
need to test its function .

 thank you  for your advices.

Best regards.




2010/1/28 WoodManEXP <[email protected]>

> Yea, trying to communicate between any two Androids, or any devices
> for that matter, using their IP address is probably going to be next
> to impossible, in the general case.
>
> It would work OK inside an intranet where IP addresses are less
> volatile (like the way controllers communicate with robots over a
> local wireless LAN). Even then the devices are configured to have
> predetermined, unchanging IP addresses.
>
> Like Bob Kerns says you may way to consider using a server as
> intermediary, much the same way that instant messaging works. A
> reasonably dependable connection can be established between a server
> and the Android and then the server can pass messages between the two.
>
> If the Androids are in close proximity, like in the same small room,
> take a look at Bluetooth for establishing a connection. That works
> really well in such cases.
>
> BTW, you can determine an Android's IP address like this:
>
>        public String getLocalIpAddress() {
>            try {
>                for (Enumeration<NetworkInterface> en =
> NetworkInterface.getNetworkInterfaces(); en.hasMoreElements();) {
>                    NetworkInterface intf = en.nextElement();
>                    for (Enumeration<InetAddress> enumIpAddr =
> intf.getInetAddresses(); enumIpAddr.hasMoreElements();) {
>                        InetAddress inetAddress = enumIpAddr.nextElement();
>                        if (!inetAddress.isLoopbackAddress()) {
>                            return inetAddress.getHostAddress().toString();
>                        }
>                    }
>                }
>            } catch (SocketException ex) {
>            }
>            return null;
>        }
>
> But it is mostly useless as it is usually known only to the nearest
> DHCP server and not outside that sphere.
>
>
> On Jan 28, 7:44 am, Bob Kerns <[email protected]> wrote:
> > The IP addresses will be whatever the DHCP server on that subnet says
> > they should be. Often, the DHCP server role will be handled by your
> > router to the internet, but in a corporate environment, things may be
> > more complicated.
> >
> > When a device connects to an IP network, it usually broadcasts "who am
> > I?", and a DHCP server then tells it basic stuff like it's IP address.
> > This can be a pre-allocated address assigned to that device, or it can
> > be allocated dynamically from a pool of addresses.
> >
> > I would guess you don't want to require pre-assignment, because,
> > typically, users would not be able to do so.
> >
> > So how do the devices discover each other's IP addresses?
> >
> > Well, there are a lot of options there. You can have each user type in
> > the IP address. You can register the device dynamically under a DNS
> > server, and have them type in the DNS name. You can use a service
> > discovery protocol (like Apple's Bonjour service). You can roll your
> > own using broadcast or multicast messages. You can register each
> > device on a server -- and then even talk to each other THROUGH the
> > server. This last has the great advantage that it allows two devices
> > on incompatible networks to communicate. (I presume the disadvantages
> > are obvious).
> >
> > About the only thing I can say for sure is -- you're going to need to
> > know more about networking than you do today. It's learnable, and
> > there are resources out there to help. Most of what you need to know
> > is information that is not specific to the Android platform, so there
> > will be a wide array of sources of information. Google searches are
> > you friend.
> >
> > You can probably accomplish everything you're trying to do entirely
> > with the classes in the java.net package. So you can develop your
> > approach in any connected Java environment.
> >
> > On Jan 28, 1:56 am, Tony <[email protected]> wrote:
> >
> > > Hello ,all!
> >
> > > If I connect  two android pwer  real-devices   to  a LAN  through wifi,
> > > then what  are their  IP adress???
> >
> > > How can then find each other by IP address???
> >
> > > are  their IP address 192.168.0.* ??
>
> --
> You received this message because you are subscribed to the Google
> Groups "Android Developers" group.
> To post to this group, send email to [email protected]
> To unsubscribe from this group, send email to
> [email protected]<android-developers%[email protected]>
> For more options, visit this group at
> http://groups.google.com/group/android-developers?hl=en
>



-- 
I have a strong desire to become  to a android superior; let us work hard
together!

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to