Is There A Way To Debug A Http Request Through An Android App Inside Eclipse?
Solution 1:
Yes, there is a way to do this.
Inside your parser (Json parser in my case which was defined inside JSonparser.java), as default, you are probably going to have this code:
DefaultHttpClienthttpClient=newDefaultHttpClient();
HttpPosthttpPost=newHttpPost(url);
httpPost.setEntity(newUrlEncodedFormEntity(params));
HttpResponsehttpResponse= httpClient.execute(httpPost);
HttpEntityhttpEntity= httpResponse.getEntity();
As you can see here is where you http request is made (in this case a post one). Now what you need to do is after those lines create one logcat feedback, a response feedback to be more specific:
String all=EntityUtils.toString(httpEntity);
Log.d("Response",all);
Now, open the logcat [ Window -> Show View -> Other -> Android -> Logcat] and add a new filter on the plus button. On the screen thats gonna pop up type Anything you want as Filter name (in my case as u can see its already Response) and as Tag give the same name u gave at Log.d("Response",all);
.
Run you application and you will see that when you call the connection with the database, some php moves that can cause errors (such as connection request) will come up in this filter. For example the last error log I received was:
03-23 14:26:06.611: D/Response(1270): <br />
03-23 14:26:06.611: D/Response(1270): <fontsize='1'><tableclass='xdebug-error xe-warning'dir='ltr'border='1'cellspacing='0'cellpadding='1'>
03-23 14:26:06.611: D/Response(1270): <tr><thalign='left'bgcolor='#f57900'colspan="5"><spanstyle='background-color: #cc0000; color: #fce94f; font-size: x-large;'>( ! )</span> Warning: mysql_connect(): Access denied for user 'root'@'localhost' (using password: YES) in C:\wamp\www\android_connect\db_connect.php on line <i>28</i></th></tr>
03-23 14:26:06.611: D/Response(1270): <tr><thalign='left'bgcolor='#e9b96e'colspan='5'>Call Stack</th></tr>
03-23 14:26:06.611: D/Response(1270): <tr><thalign='center'bgcolor='#eeeeec'>#</th><thalign='left'bgcolor='#eeeeec'>Time</th><thalign='left'bgcolor='#eeeeec'>Memory</th><thalign='left'bgcolor='#eeeeec'>Function</th><thalign='left'bgcolor='#eeeeec'>Location</th></tr>
03-23 14:26:06.611: D/Response(1270): <tr><tdbgcolor='#eeeeec'align='center'>1</td><tdbgcolor='#eeeeec'align='center'>0.0003</td><tdbgcolor='#eeeeec'align='right'>143616</td><tdbgcolor='#eeeeec'>{main}( )</td><tdtitle='C:\wamp\www\android_connect\create_product.php'bgcolor='#eeeeec'>..\create_product.php<b>:</b>0</td></tr>
03-23 14:26:06.611: D/Response(1270): <tr><tdbgcolor='#eeeeec'align='center'>2</td><tdbgcolor='#eeeeec'align='center'>0.0006</td><tdbgcolor='#eeeeec'align='right'>150200</td><tdbgcolor='#eeeeec'>DB_CONNECT->__construct( )</td><tdtitle='C:\wamp\www\android_connect\create_product.php'bgcolor='#eeeeec'>..\create_product.php<b>:</b>20</td></tr>
03-23 14:26:06.611: D/Response(1270): <tr><tdbgcolor='#eeeeec'align='center'>3</td><tdbgcolor='#eeeeec'align='center'>0.0006</td><tdbgcolor='#eeeeec'align='right'>150216</td><tdbgcolor='#eeeeec'>DB_CONNECT->connect( )</td><tdtitle='C:\wamp\www\android_connect\db_connect.php'bgcolor='#eeeeec'>..\db_connect.php<b>:</b>11</td></tr>
03-23 14:26:06.611: D/Response(1270): <tr><tdbgcolor='#eeeeec'align='center'>4</td><tdbgcolor='#eeeeec'align='center'>0.0008</td><tdbgcolor='#eeeeec'align='right'>150832</td><tdbgcolor='#eeeeec'><ahref='http://www.php.net/function.mysql-connect'target='_new'>mysql_connect</a>
03-23 14:26:06.611: D/Response(1270): ( )</td><tdtitle='C:\wamp\www\android_connect\db_connect.php'bgcolor='#eeeeec'>..\db_connect.php<b>:</b>28</td></tr>
03-23 14:26:06.611: D/Response(1270): </table></font>
03-23 14:26:06.611: D/Response(1270): Access denied for user 'root'@'localhost' (using password: YES)<br />
03-23 14:26:06.611: D/Response(1270): <fontsize='1'><tableclass='xdebug-error xe-warning'dir='ltr'border='1'cellspacing='0'cellpadding='1'>
03-23 14:26:06.611: D/Response(1270): <tr><thalign='left'bgcolor='#f57900'colspan="5"><spanstyle='background-color: #cc0000; color: #fce94f; font-size: x-large;'>( ! )</span> Warning: mysql_close(): no MySQL-Link resource supplied in C:\wamp\www\android_connect\db_connect.php on line <i>42</i></th></tr>
03-23 14:26:06.611: D/Response(1270): <tr><thalign='left'bgcolor='#e9b96e'colspan='5'>Call Stack</th></tr>
03-23 14:26:06.611: D/Response(1270): <tr><thalign='center'bgcolor='#eeeeec'>#</th><thalign='left'bgcolor='#eeeeec'>Time</th><thalign='left'bgcolor='#eeeeec'>Memory</th><thalign='left'bgcolor='#eeeeec'>Function</th><thalign='left'bgcolor='#eeeeec'>Location</th></tr>
03-23 14:26:06.611: D/Response(1270): <tr><tdbgcolor='#eeeeec'align='center'>1</td><tdbgcolor='#eeeeec'align='center'>0.0003</td><tdbgcolor='#eeeeec'align='right'>143616</td><tdbgcolor='#eeeeec'>{main}( )</td><tdtitle='C:\wamp\www\android_connect\create_product.php'bgcolor='#eeeeec'>..\create_product.php<b>:</b>0</td></tr>
03-23 14:26:06.611: D/Response(1270): <tr><tdbgcolor='#eeeeec'align='center'>2</td><tdbgcolor='#eeeeec'align='center'>0.0006</td><tdbgcolor='#eeeeec'align='right'>150200</td><tdbgcolor='#eeeeec'>DB_CONNECT->__construct( )</td><tdtitle='C:\wamp\www\android_connect\create_product.php'bgcolor='#eeeeec'>..\create_product.php<b>:</b>20</td></tr>
03-23 14:26:06.611: D/Response(1270): <tr><tdbgcolor='#eeeeec'align='center'>3</td><tdbgcolor='#eeeeec'align='center'>0.0006</td><tdbgcolor='#eeeeec'align='right'>150216</td><tdbgcolor='#eeeeec'>DB_CONNECT->connect( )</td><tdtitle='C:\wamp\www\android_connect\db_connect.php'bgcolor='#eeeeec'>..\db_connect.php<b>:</b>11</td></tr>
03-23 14:26:06.611: D/Response(1270): <tr><tdbgcolor='#eeeeec'align='center'>4</td><tdbgcolor='#eeeeec'align='center'>0.0110</td><tdbgcolor='#eeeeec'align='right'>146960</td><tdbgcolor='#eeeeec'>DB_CONNECT->__destruct( )</td><tdtitle='C:\wamp\www\android_connect\db_connect.php'bgcolor='#eeeeec'>..\db_connect.php<b>:</b>0</td></tr>
03-23 14:26:06.611: D/Response(1270): <tr><tdbgcolor='#eeeeec'align='center'>5</td><tdbgco
One tip is to export and save this log as one html file to get a better view of whats going on.
Post a Comment for "Is There A Way To Debug A Http Request Through An Android App Inside Eclipse?"