Hi,

I'm really just a beginner and fiddling a little bit around with java
and my G1. I'd like to create a calendar event from the phone and
learned, that there is no Android API for the calendar.

I thought it should be possible to access the google calendar via web.
I googled a bit and found some code to try. If I start it as a java
programm on my home pc, it works well and adds an event to my
calendar:

com.google.gdata.client.calendar.CalendarService;
import com.google.gdata.data.DateTime;
import com.google.gdata.data.Person;
import com.google.gdata.data.PlainTextConstruct;
import com.google.gdata.data.extensions.EventEntry;
import com.google.gdata.data.extensions.When;
import com.google.gdata.util.ServiceException;
import java.io.IOException;
import java.net.URL;

public class TestMyCal {

       /**
        * @param args
        */
       public static void main(String[] args) throws IOException,
ServiceException {
       // Set up the URL and the object that will handle the
connection:
               URL postUrl = new URL("http://www.google.com/calendar/
feeds/MYEMAIL/
private/full");
       CalendarService myService = new CalendarService("exampleCo-
exampleApp-1");
               myService.setUserCredentials("MYNAME", "MYPASSWORD");

       EventEntry myEntry = new EventEntry();

       myEntry.setTitle(new PlainTextConstruct("My test event"));
       myEntry.setContent(new PlainTextConstruct("It might work."));

       Person author = new Person("It's me", null, "m...@home.com');
       myEntry.getAuthors().add(author);

       DateTime startTime = DateTime.parseDateTime
("2009-04-08T15:00:00-08:00");
       DateTime endTime = DateTime.parseDateTime
("2009-04-08T17:00:00-08:00");
       When eventTimes = new When();
       eventTimes.setStartTime(startTime);
       eventTimes.setEndTime(endTime);
       myEntry.addTime(eventTimes);

       // Send the request and receive the response:
       EventEntry insertedEntry = myService.insert(postUrl, myEntry);
   }

}

Great. Now I tried to put that into a Android application:

package com.android.hello;

import android.app.Activity;
import android.os.Bundle;
import com.google.gdata.client.calendar.CalendarService;
import com.google.gdata.data.DateTime;
import com.google.gdata.data.Person;
import com.google.gdata.data.PlainTextConstruct;
import com.google.gdata.data.extensions.EventEntry;
import com.google.gdata.data.extensions.When;
import com.google.gdata.util.AuthenticationException;
import com.google.gdata.util.ServiceException;
import java.io.IOException;
import java.net.MalformedURLException;
import java.net.URL;

public class HelloAndroid extends Activity {
   /** Called when the activity is first created. */
   @Override
   public void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       // Set up the URL and the object that will handle the
connection:
       URL postUrl = null;
               try {
                       postUrl = new URL("http://www.google.com/
calendar/feeds/MYEMAIL/
private/full");
               } catch (MalformedURLException e) {
                       // TODO Auto-generated catch block
                       e.printStackTrace();
               }

       CalendarService myService = new CalendarService("exampleCo-
exampleApp-1");
               try {
                       myService.setUserCredentials("MYNAME",
"MYPASSWORD");
               } catch (AuthenticationException e) {
                       // TODO Auto-generated catch block
                       e.printStackTrace();
               }

       EventEntry myEntry = new EventEntry();

       myEntry.setTitle(new PlainTextConstruct("My test event"));
       myEntry.setContent(new PlainTextConstruct("It might work."));

       Person author = new Person("It's me", null, "m...@home.com');
       myEntry.getAuthors().add(author);

       DateTime startTime = DateTime.parseDateTime
("2009-04-08T15:00:00-08:00");
       DateTime endTime = DateTime.parseDateTime
("2009-04-08T17:00:00-08:00");
       When eventTimes = new When();
       eventTimes.setStartTime(startTime);
       eventTimes.setEndTime(endTime);
       myEntry.addTime(eventTimes);

               try {
                       EventEntry insertedEntry = myService.insert
(postUrl, myEntry);
               } catch (IOException e) {
                       // TODO Auto-generated catch block
                       e.printStackTrace();
               } catch (ServiceException e) {
                       // TODO Auto-generated catch block
                       e.printStackTrace();
               }

       setContentView(R.layout.main);
   }
}

The program just runs fine, no errors (not using the emulator, not
using the G1) - but there is no calendar entry anywhere.

Any pro out there who can give me a hint, what I am doing wrong?

Greetings,
Andreas

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google
Groups "Android Beginners" group.
To post to this group, send email to android-beginners@googlegroups.com
To unsubscribe from this group, send email to
android-beginners-unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-beginners?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to