android web service intelligent and compact response


We are develop android application which we uses web service to retrieve data and display over the page.

We have two options JSON and XML

but problem is on WIFI it works fine but with GPRS most of the time it throws connection time out or so time out exception.

We request 10 records to web service which returns data in JSON or XML format and most of time representation of data is larger then data itself.

We are looking for a solution some what like small and efficient, there are lots of android applications in the market which are doing the same job very well and efficiently.

What is the efficient and intelligent way to do it ?

Should we break one request into multiple requests and merge them as we get response ?

Or we should send data in simple delimited text format from web service which may decrease the data size and improve travel and we can identify if connection interrupted how much data we received..

This problem is very well known problem there is there any standard way to do it ?