1

Android app running on emulator

My MainActivity:

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();
        }
    }
}

My AndroidManifest.xml contain:

<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" />

My Server running on localmachine

I checked 127.0.0.1 and 10.0.2.2 in android app

Shreyash S Sarnayak
  • 2,309
  • 19
  • 23
olty1402
  • 11
  • 1
  • 1
    How do you know it's not working? What was expected to happen? What happens instead? Do you get any error messages? – giusti Jan 14 '17 at 14:49
  • Possible duplicate of [How can I access my localhost from my Android device?](http://stackoverflow.com/questions/4779963/how-can-i-access-my-localhost-from-my-android-device) – OneCricketeer Jan 14 '17 at 15:01
  • Your server isn't running on your phone which has IP 127.0.0.1 – OneCricketeer Jan 14 '17 at 15:02

1 Answers1

0

Use http://10.0.2.2:8080/ where 8080 is your port number. If you just try 10.0.2.2, maybe it won't work. or create a new instance of the emulator using the AVD manager and try using it. Foe genymotion it will be 10.0.3.2

Vishesh
  • 308
  • 1
  • 9