harmjanr
harmjanr

Reputation: 937

Getting a JSONException: end of input at character 0

I have an API in php, that sends data in JSON format. I made the following code, that works fine when I am on wifi. But when I want to download the data from the API when I am on 3g, I receive the following exception: JSONException: End of input at character 0 of

I have no idea why it does work on wifi, but it doesn't on mobile internet. My code:

        JSONObject json = getJSONfromURL("http://api.myurl.com/users.json");

        JSONArray objects = json.getJSONArray("objects");
        db.setLockingEnabled(false);
        db.beginTransaction();

        for (int i = 0; i < objects.length(); i++) {
            JSONObject e = objects.getJSONObject(i);

            if(e.getString("UID") != "-1"){
                ContentValues values = new ContentValues();
                //DO DATABASE INSERT. REMOVED THIS CODE FOR READABILITY
                alldata_mProgressDialog.incrementProgressBy(1);
            }
        }

Anyone that can help me out?

Upvotes: 15

Views: 77158

Answers (6)

Lexo
Lexo

Reputation: 437

I got this error while debugging an android app on Android Studio via USB. Connection attempts failed with one tablet but not with my regular test tablet. It turned out that the failure was due to the fact that I hadn't enabled WIFI settings on the failing machine. So I enabled WIFI on it and it connected to server OK.

Upvotes: 0

David Rivera
David Rivera

Reputation: 59

Check if you are asking for permissions to use the Internet.

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

in the Android Manifest

Check out others at Permissions overview @ https://developer.android.com.

Upvotes: 5

Vindhya Sharma
Vindhya Sharma

Reputation: 88

This kind of error comes up when response is null.Print Json respone in logcat

Log.e ( "response", "" + response ), or you can check response on postman also.

Upvotes: 0

truespan
truespan

Reputation: 189

Sometimes this error is caused as json encode function requires all incoming data to be UTF-8 encoded.

Try adding mysqli_set_charset($con, 'utf8'); into your php.

Upvotes: 2

san
san

Reputation: 1835

May be you are getting default response with default values. This kind of error comes up when you are not sending your requests properly or sending with wrong parameters. Check This

Upvotes: 4

amiekuser
amiekuser

Reputation: 1630

You are probably getting a blank response. Its not null but the response is empty. So you are getting this error and not a Nullpointer exception

Upvotes: 51

Related Questions