首先,android客户端的通讯时通过GPRS建立socket连接的,不是通过wifi。
问题是:通过什么方法能够获取分配给手机的ip地址呢? 谢谢。

解决方案 »

  1.   

    手机的IP和端口是时刻变化的,每次手机给服务器传数据都不一样,最好先给服务器发个请求,然后服务器可以根据该次的手机IP和端口号进行回复数据即可,这样就实现了双向通信
      

  2.   

     移动通讯服务提供者在给手机成功分配IP地址后,在一段时间内,手机的IP地址算是固定了, 问题是 服务器那边 是可以 获取手机IP地址的,而如何在手机客户端获取,本机IP地址呢
      

  3.   

    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()) {
    ipaddr = inetAddress.getHostAddress().toString();

    }
    }
    Google来的代码。
      

  4.   

    我问一下  你是如何实现gprs通过socket和pc通信的   收到回复一下  谢谢
      

  5.   

    通常是手机知道服务器的ip而链接上去的吧,还没有听过服务器主动去找手机,不过根据计算机的开发经验来说,是服务器里面不停地设置监听,如果有电脑连上去发送一个信号,当服务器收到这个信号之后,返回客户机想要的东西给它,整个流程为一个函数内完成,所以不需要知道下面客户机的ip的。