I think you can use account manager to store account and password, but it
was from 2.0.

2010/2/28 Anna PS <[email protected]>

> OK, I found this:
> http://code.google.com/apis/youtube/2.0/developers_guide_java.html#ClientLogin_for_Installed_Applications
> Should have read the docs more carefully :)
>
> It suggests supplying the password like this:
>
> YouTubeService service = new YouTubeService(clientID, developer_key);
> service.setUserCredentials("[email protected]", "password");
>
> My question now is how to store "password" securely in Android. The
> first time the password is needed, I guess I can just do a popup with
> email and password field, but it would be nice to store the password
> in Settings. Can I do this securely? Would I need to hash it?
>
> Thanks!
> Anna
>
> On Feb 27, 3:07 pm, Anna PS <[email protected]> wrote:
> > I'm writing an Android app that, among other things, uses the GData
> > libraries to upload videos shot with the camera to Youtube (code
> > below). However, I'm a bit confused about how to authenticate my
> > users.
> >
> > Can I simply assume that they are already signed in to Youtube, since
> > they're using Android? Or do I need to ask them to authenticate? In
> > which case, should I use ClientLogin?
> >
> > There seems to be little example code on how to use ClientLogin in
> > Android, and since it's using people's Google account passwords, it
> > obviously needs to be secure. I'm a bit concerned at the prospect of
> > writing my own authentication code without much guidance, and at the
> > extra step required from users.
> >
> > It seems odd that I have to ask people to authenticate for a Google
> > service, given that they are using Google phones and the inbuilt
> > Google apps don't require external authentication. Why is this? It
> > seems to put my app at a disadvantage to Google's own apps.
> >
> > -----------------------------
> >
> > Here's the code that I have, below:
> >
> >         private void testGdata() {
> >
> >                 YouTubeService service = new YouTubeService(clientId,
> developerKey);
> >
> >                 VideoEntry newEntry = new VideoEntry();
> >
> >                 YouTubeMediaGroup mg = newEntry.getOrCreateMediaGroup();
> >                 mg.setTitle(new MediaTitle());
> >                 mg.getTitle().setPlainTextContent("Custom title here");
> >                 mg.addCategory(new
> MediaCategory(YouTubeNamespace.CATEGORY_SCHEME,
> > "Politics"));
> >                 mg.setKeywords(new MediaKeywords());
> >                 mg.getKeywords().addKeyword("myImportantKeyword");
> >                 mg.setDescription(new MediaDescription());
> >                 mg.getDescription().setPlainTextContent("Custom
> description here");
> >                 mg.setPrivate(false);
> >                 mg.addCategory(new
> > MediaCategory(YouTubeNamespace.DEVELOPER_TAG_SCHEME, "mydevtag"));
> >                 mg.addCategory(new
> > MediaCategory(YouTubeNamespace.DEVELOPER_TAG_SCHEME,
> > "anotherdevtag"));
> >
> >                 newEntry.setGeoCoordinates(new GeoRssWhere(37.0,-122.0));
> >                 // alternatively, one could specify just a descriptive
> string
> >                 // newEntry.setLocation("Mountain View, CA");
> >
> >                 //MediaFileSource ms = new MediaFileSource(new
> File("file.mov"),
> > "video/quicktime");
> >                 MediaFileSource ms = new MediaFileSource(video,
> "video/3gpp");
> >                 newEntry.setMediaSource(ms);
> >
> >                 String uploadUrl =
> >                   "
> http://uploads.gdata.youtube.com/feeds/api/users/default/
> > uploads";
> >
> >                 try {
> >                         VideoEntry createdEntry = service.insert(new
> URL(uploadUrl),
> > newEntry);
> >                 } catch (MalformedURLException e) {
> >                         // TODO Auto-generated catch block
> >                         e.printStackTrace();
> >                 } catch (IOException e) {
> >                         // TODO Auto-generated catch block
> >                         e.printStackTrace();
> >                 } catch (ServiceException e) {
> >                         // TODO Auto-generated catch block
> >                         e.printStackTrace();
> >                 }
> >         }
>
> --
> You received this message because you are subscribed to the Google
> Groups "Android Developers" group.
> To post to this group, send email to [email protected]
> To unsubscribe from this group, send email to
> [email protected]<android-developers%[email protected]>
> For more options, visit this group at
> http://groups.google.com/group/android-developers?hl=en
>

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to