Accessing google calendar through Android using the given protocol

by Nikhil Agarwal » Thu, 21 Jan 2010 19:10:16 GMT


Sponsored Links
 I need to insert,update,delete events in google calendar using
android. I tried using the gdata calendar protocol directly from
 http://code.google.com/apis/calendar/data/2.0/developers_guide_protocol.html 
but I could not go beyond authenticating the user.

I was able to authenticate the user and I extracted the Auth code
using:-

temp1 = EntityUtils.toString(response.getEntity());
if(response.getStatusLine().getStatusCode()==200)
                auth = temp1.substring(temp1.indexOf("Auth=")+5).trim
();

After this I tried inserting an event which did not work. I was
getting status code 200 in response and I am not sure even if I did
get a proper response, how can I extract the cookie s and gsessionid
for my next request.

I tried creating a calendar instead and I received the same status
code 200. I used the following code:-

   String messageBody="<entry xmlns=' http://www.w3.org/2005/Atom '"+
       " xmlns:gd=' http://schemas.google.com/g/2005 '"+
       " xmlns:gCal=' http://schemas.google.com/gCal/2005 '>"+
  " <title type='text'>SMS Invite Schedule</title>"+
  " <summary type='text'>This calendar contains the practice schedule
and game times.</summary>"+
  " <gCal:timezone value='Singapore/Asia'></gCal:timezone>"+
  " <gCal:hidden value='false'></gCal:hidden>"+
  " <gCal:color value='#2952A3'></gCal:color>"+
  " <gd:where rel='' label='' valueString='Oakland'></gd:where>"+
" </entry>";
 StringEntity entity =new StringEntity(messageBody);
            entity.setContentType("application/atom+xml");
            entity.setChunked(true);
            httppost.setEntity(entity);
            httppost.setHeader("Authorization", "GoogleLogin
auth="+auth);
            httppost.setHeader("GData-Version", "2");
            //httppost.setHeader("Content-Length",String.valueOf
(entity.getContentLength()));
            //httppost.setHeader("Content-Type", "application/atom
+xml");
            HttpResponse response = httpclient.execute(httppost);

As can be seen from the code, I commented Content-Length and Content-
Type as otherwise I would get a ClientProtocolException (content-
length was causing the exception, didn't put content-type since it is
already mentioned in the entity...not sure where it should be
defined).

I am sorry that I don't understand the basics correctly. I did refer
to the apache site for httpclient stuff but it wasn't of much help.
Please help me out with the above problems.  Thank you.



Accessing google calendar through Android using the given protocol

by Nikhil Agarwal » Thu, 21 Jan 2010 19:18:52 GMT


 I need to insert,update,delete events in google calendar using
android. I tried using the protocol given at
 http://code.google.com/apis/calendar/data/2.0/developers_guide_protocol.html 
but I was unable to go beyond authenticating the user.

I was able to authenticate the user and I extracted the Auth code
using:-
 temp1 = EntityUtils.toString(response.getEntity());
if(response.getStatusLine().getStatusCode()==200)
                auth = temp1.substring(temp1.indexOf("Auth=")+5).trim
();

After this I tried inserting an event which did not work. I was
getting status code 200 in response and I am not sure even if I did
get a proper response, how can I extract the cookie s and gsessionid
for my next request.

I tried creating a calendar instead and I received the same status
code 200. I used the following code:-

   String messageBody="<entry xmlns=' http://www.w3.org/2005/Atom '"+
       " xmlns:gd=' http://schemas.google.com/g/2005 '"+
       " xmlns:gCal=' http://schemas.google.com/gCal/2005 '>"+
  " <title type='text'>ABC Project Schedule</title>"+
  " <summary type='text'>This calendar...</summary>"+
  " <gCal:timezone value='Singapore/Asia'></gCal:timezone>"+
  " <gCal:hidden value='false'></gCal:hidden>"+
  " <gCal:color value='#2952A3'></gCal:color>"+
  " <gd:where rel='' label='' valueString='Oakland'></gd:where>"+
" </entry>";
 StringEntity entity =new StringEntity(messageBody);
            entity.setContentType("application/atom+xml");
            entity.setChunked(true);
            httppost.setEntity(entity);
            httppost.setHeader("Authorization", "GoogleLogin
auth="+auth);
            httppost.setHeader("GData-Version", "2");
            //httppost.setHeader("Content-Length",String.valueOf
(entity.getContentLength()));
            //httppost.setHeader("Content-Type", "application/atom
+xml");
            HttpResponse response = httpclient.execute(httppost);

As can be seen from the code, I commented Content-Length and Content-
Type as otherwise I would get a ClientProtocolException (content-
length was causing the exception, didn't put content-type since it is
already mentioned in the entity...not sure where it should be
defined).

I am sorry that I don't understand the basics correctly. I did refer
to the apache site for httpclient stuff but it wasn't of much help.
Please help me out with the above problems. It is very important for
my Android application to have this functionality. Thank you.


Sponsored Links


Accessing google calendar through Android using the given protocol

by Nikhil Agarwal » Thu, 21 Jan 2010 19:22:19 GMT


 I need to insert,update,delete events in google calendar using
android. I tried using the protocol given at
 http://code.google.com/apis/calendar/data/2.0/developers_guide_protoc... 
but I was unable to go beyond authenticating the user.

I was able to authenticate the user and I extracted the Auth code
using:-
 temp1 = EntityUtils.toString(response.getEntity());
if(response.getStatusLine().getStatusCode()==200)
                auth = temp1.substring(temp1.indexOf("Auth=")+5).trim
();

After this I tried inserting an event which did not work. I was
getting status code 200 in response and I am not sure even if I did
get a proper response, how can I extract the cookie s and gsessionid
for my next request.

I tried creating a calendar instead and I received the same status
code 200. I used the following code:-

   String messageBody="<entry xmlns=' http://www.w3.org/2005/Atom '"+
       " xmlns:gd=' http://schemas.google.com/g/2005 '"+
       " xmlns:gCal=' http://schemas.google.com/gCal/2005 '>"+
  " <title type='text'>ABC Project Schedule</title>"+
  " <summary type='text'>This calendar...</summary>"+
  " <gCal:timezone value='Singapore/Asia'></gCal:timezone>"+
  " <gCal:hidden value='false'></gCal:hidden>"+
  " <gCal:color value='#2952A3'></gCal:color>"+
  " <gd:where rel='' label='' valueString='Lab'></gd:where>"+
" </entry>";
 StringEntity entity =new StringEntity(messageBody);
            entity.setContentType("application/atom+xml");
            entity.setChunked(true);
            httppost.setEntity(entity);
            httppost.setHeader("Authorization", "GoogleLogin
auth="+auth);
            httppost.setHeader("GData-Version", "2");
            //httppost.setHeader("Content-Length",String.valueOf
(entity.getContentLength()));
            //httppost.setHeader("Content-Type", "application/atom
+xml");
            HttpResponse response = httpclient.execute(httppost);

As can be seen from the code, I commented Content-Length and Content-
Type as otherwise I would get a ClientProtocolException (content-
length was causing the exception, didn't put content-type since it is
already mentioned in the entity...not sure where it should be
defined).

I am sorry that I don't understand the basics correctly. I did refer
to the apache site for httpclient stuff but it wasn't of much help.
Please help me out with the above problems.  Thank you.



Other Threads

1. playing sound when a call is running in android

Hi All,

I want my app to play a sound file over the voice channel when a call
is running, how can I acheive this? I searched this group and got this
link

2. Media Recorder Prepare failed

Hi,
While recording video getting Exception from Prepare method as illegal
state exception
final SurfaceView surfaceview =
(SurfaceView)dialog.findViewById(R.id.SurfaceView01);
                                SurfaceHolder holder = surfaceview.getHolder();
                                final Surface target = holder.getSurface();
mRecordStop.setBackgroundResource(R.drawable.stoprecord);
mVideoRecorder = new MediaRecorder();
Log.i("video test", "setVideoSource");
        
mVideoRecorder.setVideoSource(MediaRecorder.VideoSource.DEFAULT);

                                                        Log.i("video test", 
"setOutputFormat");
        
mVideoRecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);

                                                        Log.i("video test", 
"setVideoEncoder");
        
mVideoRecorder.setVideoEncoder(MediaRecorder.VideoEncoder.H263);
                                                        Log.i("video test", 
"setOutputFile");
                                                        
mVideoRecorder.setOutputFile("/sdcard/dummy.mp4");
                                                        
//mVideoRecorder.setVideoSize(240, 380);
                                                        
//mVideoRecorder.setVideoFrameRate(15);

                                                        Log.i("video test", 
"setPreviewDisplay");
                                                        
mVideoRecorder.setPreviewDisplay(target);

                                                        
Toast.makeText(VideoTemplateActivity.this, "Recorder Working",
5).show();
                                                        try {

                                                    Log.i("video test", 
"prepare");
                                                                
mVideoRecorder.prepare();
                                                        } catch 
(IllegalStateException e) {
                                                                
e.printStackTrace();
                                                        } catch (IOException e) 
{
                                                                
e.printStackTrace();
                                                        }

-- 

3. How to update pre-installed apps

4. continuous camera capture

5. android 2.2 call phone and call log

6. Jpeg decoder for emulator

7. Security Exception embedding Emergency Dialer in ActivityGroup