注:php作为服务端, android作为客户端

 

Php服务端:

    <?php  

    //确保在连接客户端时不会超时  

    set_time_limit(0);  

     

    //设置IP和端口号  

    $address='127.0.0.1';  

    $port=3333;    //调试的时候,可以多换端口来测试程序!  

     

    //创建一个SOCKET   

    if(($sock=socket_create(AF_INET,SOCK_STREAM,SOL_TCP))<0)  

    {  

    echo "socket_create()失败的原因是:".socket_strerror($sock)."
"
;  

    }  

     

    //绑定到socket端口  

    if(($ret=socket_bind($sock,$address,$port))<0)  

    {  

    echo "socket_bind()失败的原因是:".socket_strerror($ret)."
"
;  

    }  

     

    //开始监听  

    if(($ret=socket_listen($sock,4))<0)  

    {  

    echo "socket_listen()失败的原因是:".socket_strerror($ret)."
"
;  

    }  

     

    do {  

         if (($msgsock = socket_accept($sock)) < 0)  

        {  

            echo "socket_accept() failed: reason: ". socket_strerror($msgsock) . "/n";

            echo "/nThe Server is Stop……/n";

         break;  

         }  

     

         //发到客户端  

         $msg ="Welcome ToServer!
"
;  

         socket_write($msgsock, $msg, strlen($msg));

         socket_close($msgsock);  

         

         echo "/nThe Server is running……/n";

         printf("/nThe Server is running……/n");

    } while (true);  

     

    printf("========出来了……/n");

    socket_close($sock);  

?> 

 

Android客户端:

package com.msi.getwebpage;

 

import java.io.IOException;

import java.io.InputStream;

import java.io.OutputStream;

import java.net.Socket;

importjava.net.UnknownHostException;

import android.app.Activity;

import android.content.Intent;

import android.os.Bundle;

 

public class SocketTestextends Activity {

    /** Called when the activity is firstcreated. */

    @Override

    public void onCreate(BundlesavedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.main);

       

        try {

           

            System.out.println("准备连接");

            Socket socket = new Socket("10.0.2.2",3333);

            System.out.println("连接上了");

           

            Intent intent = new Intent();

            intent.setClass(SocketTest.this, ConnectActivity.class);

            SocketTest.this.startActivity(intent);         

            InputStream inputStream = socket.getInputStream();

            byte buffer[] = new byte[1024*4];

            int temp = 0;

            String res = null;

            //从inputstream中读取客户端所发送的数据

            System.out.println("接收到服务器的信息是:");

           

            while ((temp = inputStream.read(buffer)) != -1){

                System.out.println(new String(buffer, 0, temp));

                res += new String(buffer, 0, temp);

            }

           

            System.out.println("已经结束接收信息……");

           

            socket.close();

            inputStream.close();

           

        } catch (UnknownHostException e) {

            e.printStackTrace();

        } catch (IOException e) {

            e.printStackTrace();

        }

       

    }

}

更多相关文章

  1. 淘宝(阿里百川)手机客户端开发日记第一篇 android 主框架搭建(三
  2. Android ADB 端口占用问题解决方案
  3. 新浪微博Android客户端学习记录四:完成OAuth认证
  4. 《新浪微博Android客户端开发完整视频 Touch Android版》
  5. Android客户端接收来自Faye的消息推送
  6. 人人网官方Android客户端源码分析(1)
  7. Android 3.0之后开机无法接收系统广播权限原因
  8. ListView setOnItemClickListener无效原因详细分析

随机推荐

  1. Android,开源还是封闭?
  2. Android启动脚本init.rc
  3. Android开发该何去何从
  4. 《Android经验分享》周刊第11期
  5. Android方向传感器实践——自己动手做指
  6. Android系列教程之四:Android项目的目录结
  7. Android(安卓)高手进阶教程(十四)之----A
  8. Android通过软解码播放视频
  9. Android布局管理器 - 详细解析布局实现
  10. Android(安卓)以widget的方式集成Dcloud