Invalid IP Address Android insert to MySQL

2019-08-18 01:35发布

问题:

try
    {
        HttpClient httpclient = new DefaultHttpClient();
        HttpPost httppost = new HttpPost("http://10.0.2.2/insert.php");
        httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
        HttpResponse response = httpclient.execute(httppost);
        HttpEntity entity = response.getEntity();
        is = entity.getContent();
        Log.e("pass 1", "connection success ");
    }
    catch(Exception e)
    {
        Log.e("Fail 1", e.toString());
        Toast.makeText(getApplicationContext(), "Invalid IP Address",
                Toast.LENGTH_LONG).show();
    }

I want to insert some value from my android application to mysql database and it showed an error "Invalid Ip Address" Please help. Thanks in advance.

Logcat error 09-21 12:57:12.084 912-912/com.srg.ibc.appointmentapplication E/Fail 1﹕ android.os.NetworkOnMainThreadException 09-21 12:57:12.114 912-912/com.srg.ibc.appointmentapplication E/Fail 2﹕ java.lang.NullPointerException: lock == null 09-21 12:57:12.114 912-912/com.srg.ibc.appointmentapplication E/Fail 3﹕ java.lang.NullPointerException

回答1:

You are trying to perform a networking operation on the main thread. See How to fix android.os.NetworkOnMainThreadException?



回答2:

@SuppressLint("NewApi")
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
    StrictMode.setThreadPolicy(policy);
    setContentView(R.layout.login);

add this code into you code then it will work



回答3:

I used Angry IP scanner to scan my router for hosts, got the IP address the router assigns to my machine , and replaced it in the URL thus ; http://xxx.xxx.x.xxx/cropkeeper/spinner/soilCategory.php

here's my try catch

`try {
        // connectivity to database
        HttpClient httpclient = new DefaultHttpClient();
        HttpPost httppost = new HttpPost("http://xxx.xxx.x.xxx/cropkeeper/spinner/soilCategory.php");
        HttpResponse response = httpclient.execute(httppost);
        HttpEntity entity = response.getEntity();
        is = entity.getContent();
    }
    catch(Exception e) {
        Log.e("Fail 3", e.toString());
        Toast.makeText(getApplicationContext(), "Invalid IP Address", Toast.LENGTH_LONG).show();
        finish();
    }`

where xxx.xxx.x.xxx is my IP Address.