【问题标题】:Connecting Android Emulator to a port locally将 Android Emulator 连接到本地端口
【发布时间】:2011-07-28 09:46:10
【问题描述】:

我在这个简单的任务中遇到了问题。我在运行模拟器的 Eclipse 中构建了我的 android 模拟器,应用程序本身已构建并工作到一定程度。

在界面中,用户输入要连接的 IPAddress 和端口,并编写要发送的简单消息。单击标有发送的按钮以传递详细信息。

在主类中,我有一个按钮单击侦听器,它提取三个字段并尝试使用它们来建立到此示例 4444 的特定端口的连接。

我遇到的问题是,当我尝试创建套接字或 HTTP 连接时,我无法这样做。我已经阅读了 Java/Oracle/Droid 开发人员网站上的许多教程,有些东西让我望而却步,应用程序意外停止。

我要的是一个简单的例子或建议,用 leymans 术语通过套接字或 HTTP 建立链接,我还不担心发送消息,我只需要创建该连接并确认它有效。

我已经力不从心了,两天的大部分时间都在尝试多种方法。所以我恳请您的帮助!!

   private OnClickListener sendClickListener = new OnClickListener(){
    public void onClick(View arg0) {
    //EditText dstName = (EditText) findViewById(R.id.destinationAddress);
    //EditText dstPort = (EditText) findViewById(R.id.destinationPort);
    //address = dstName.toString();
    // port = Integer.parseInt(dstPort.toString()); PROBLEM         
        //InetAddress server;
        //try {
        //  server = Inet4Address.getByName("127.0.0.1");
        //  Socket clientsocket = new Socket(server, 4444);
        //} catch (IOException e) {
        //  // TODO Auto-generated catch block
        //  e.printStackTrace();
        //  finish();
        //} 
    }
    };

我已经发布了一些当前状态的代码,它显示了创建连接的尝试累积。

亲切的问候

西蒙

【问题讨论】:

    标签: java android sockets android-emulator httpclient


    【解决方案1】:

    尝试使用 10.0.2.2 而不是 127.0.0.1,因为 127.0.0.1 指的是模拟器本身,这可能不是您想要的,而 10.0.2.2 在模拟器中是硬连线来指代模拟器的主机(您的 PC )。

    查看Emulator Networking Guide 了解更多信息。

    【讨论】:

      猜你喜欢
      • 2017-04-27
      • 1970-01-01
      • 2014-11-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多