Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Get main gmail account username in Android < 2.0

Tags:

android

gmail

For retrieving the accounts (information) in Android versions since 2.0 you can use the AccountManager that has been introduced in Android 2.0.

But now I have the problem I want to maintain compatibility with atleast Android 1.6, is there any way to retrieve account information in Android 1.6?

like image 601
Thizzer Avatar asked Jul 29 '10 09:07

Thizzer


1 Answers

  1. download the framework.jar from: http://github.com/android/platform_frameworks_opt_com.google.android/... and add it to you build path. this is some sort of an interface to the Google device functions.
  2. call the method:

    com.google.android.googlelogin.GoogleLoginServiceHelper.getAccount(Activity activity, int requestCode, boolean requireGoogle);

    where: Activity: is your Activity which get the result in the onActivityResult() requestCode: your code requireGoogle: should be true

    EX. GoogleLoginServiceHelper.getAccount(mActivity, 123, true);

3.override the onActivityResult() like:

 protected void onActivityResult(int requestCode, int resultCode, 
    Intent data) { 
            super.onActivityResult(requestCode, resultCode, data); 
            if(requestCode == 123){ 
                System.out.println(resultCode); 
                String key = "accounts"; 
                System.out.println(key + ":" + 
    Arrays.toString(data.getExtras().getStringArray(key))); 
                String accounts[] = data.getExtras().getStringArray(key); 
                if(accounts != null){ 
                   int i = 0; 
                   for(String ac : accounts){  //each account is the full 
    email address registered with this device 
                        System.out.println("ac " + i + "=" + ac); 
                         i++; 
                   } 
                } 
       } 

original post is here

like image 88
sohilv Avatar answered Nov 12 '22 02:11

sohilv