我无法连接到服务器!为什么?

时间:2017-01-14 13:34:33

标签: android sockets

在模拟器上运行的Android应用

我的主要活动:

public class MainActivity extends AppCompatActivity {

    LoginController loginCtr;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        loginCtr = new LoginController();

        final Button button = (Button) findViewById(R.id.loginButton);
        button.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                login();
            }
        });
    }

    private void login()
    {
        try {
            System.out.println("Check connection!");

            Socket s = new Socket("127.0.0.1", 9010);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

我的AndroidManifest.xml包含:

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />

我的服务器在localmachine上运行

我在Android应用程序

中检查了127.0.0.1和10.0.2.2

1 个答案:

答案 0 :(得分:0)

使用http://10.0.2.2:8080/,其中8080​​是您的端口号。如果你只是尝试10.0.2.2,也许它不会工作。  要么  使用AVD管理器创建模拟器的新实例并尝试使用它。  Foe genymotion它将是10.0.3.2