Android Open Source - PhoneGap-Calendar-Plugin Accounts Utils






From Project

Back to project page PhoneGap-Calendar-Plugin.

License

The source code is released under:

Apache License

If you think the Android project PhoneGap-Calendar-Plugin listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

/*
 *  Copyright 2011 Vodafone Group Services Ltd.
 */*  w  w w .  j av a  2s .co m*/
 *  Licensed under the Apache License, Version 2.0 (the "License");
 *  you may not use this file except in compliance with the License.
 *  You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 *  Unless required by applicable law or agreed to in writing, software
 *  distributed under the License is distributed on an "AS IS" BASIS,
 *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 *  See the License for the specific language governing permissions and
 *  limitations under the License.
 *    
 */


package com.phonegap.calendar.android.accounts;

import android.accounts.Account;
import android.accounts.AccountManager;
import android.content.Context;

/**
 * This class provides some static methods in order to manage with 
 * user accounts that user has synchronized into his device 
 * @author Sergio Martinez Rodriguez
 */
public class AccountsUtils {

  /**
   * Gets the Name of synchronized user accounts into the device
   * @param context Android app Context
   * @param type String with kind of accounts we want to obtain (Ex. com.google) 
   * @return String[] with  synchronized user accounts into the device
   */
  public static String[] getAccountsNamesByType(Context context, String type){    
    Account[] accounts = getAccountsByType(context, type);
      final int size = accounts.length;
      String[] names = new String[size];
      for (int i = 0; i < size; i++) {
        names[i] = accounts[i].name;
      }
      return names;
  }

  /**
   * Gets the synchronized Accounts in device of user.
   * @param context Android app Context
   * @param type String with kind of accounts we want to obtain (Ex. com.google) 
   * @return Account[] with  synchronized user accounts into the device
   */
  public static Account[] getAccountsByType(Context context, String type){
    final AccountManager manager = AccountManager.get(context);
      final Account[] accounts = manager.getAccountsByType(type);      
      return accounts;
  }
  
  /**
   * Gets the synchronized Accounts specified by name
   * @param context Android app Context
   * @param type String with kind of accounts we want to obtain (Ex. com.google)
   * @param name String with desired account name 
   * @return Account with  matching with given name, null in case of not matching
   */
  public static Account getAccountByNameAndType(Context context, String type, String name){    
    Account[] accounts = getAccountsByType(context, type);
      final int size = accounts.length;
      for (int i = 0; i < size; i++) {
        if (accounts[i].name.equals(name))
          return accounts[i];
      }
      return null;
  }

}




Java Source Code List

com.phonegap.calendar.android.accounts.AccountsUtils.java
com.phonegap.calendar.android.accounts.GoogleAccountUtils.java
com.phonegap.calendar.android.accounts.package-info.java
com.phonegap.calendar.android.adapters.Calendar.java
com.phonegap.calendar.android.adapters.CalendarsManager.java
com.phonegap.calendar.android.adapters.Dt.java
com.phonegap.calendar.android.adapters.Duration.java
com.phonegap.calendar.android.adapters.Event.java
com.phonegap.calendar.android.adapters.Recurrence.java
com.phonegap.calendar.android.adapters.Rule.java
com.phonegap.calendar.android.adapters.package-info.java
com.phonegap.calendar.android.core.CalendarClientFactory.java
com.phonegap.calendar.android.core.CalendarClient.java
com.phonegap.calendar.android.core.CalendarOps.java
com.phonegap.calendar.android.core.package-info.java
com.phonegap.calendar.android.model.AttendeeStatus.java
com.phonegap.calendar.android.model.Author.java
com.phonegap.calendar.android.model.BatchOperation.java
com.phonegap.calendar.android.model.BatchStatus.java
com.phonegap.calendar.android.model.CalendarEntry.java
com.phonegap.calendar.android.model.CalendarFeed.java
com.phonegap.calendar.android.model.CalendarUrl.java
com.phonegap.calendar.android.model.Category.java
com.phonegap.calendar.android.model.Comments.java
com.phonegap.calendar.android.model.Entry.java
com.phonegap.calendar.android.model.EventEntry.java
com.phonegap.calendar.android.model.EventFeed.java
com.phonegap.calendar.android.model.FeedLink.java
com.phonegap.calendar.android.model.Feed.java
com.phonegap.calendar.android.model.Link.java
com.phonegap.calendar.android.model.Reminder.java
com.phonegap.calendar.android.model.Value.java
com.phonegap.calendar.android.model.When.java
com.phonegap.calendar.android.model.Where.java
com.phonegap.calendar.android.model.Who.java
com.phonegap.calendar.android.model.package-info.java
com.phonegap.calendar.android.utils.DateUtils.java
com.phonegap.calendar.android.utils.package-info.java
com.phonegap.calendar.app.ApplicationActivity.java
com.trial.phonegap.plugin.calendar.CalendarAccessorCreator.java
com.trial.phonegap.plugin.calendar.CalendarAccessorGoogle.java
com.trial.phonegap.plugin.calendar.CalendarAccessorMock.java
com.trial.phonegap.plugin.calendar.CalendarPlugin.java