Android Open Source - google-authenticator-android Optional Features






From Project

Back to project page google-authenticator-android.

License

The source code is released under:

Apache License

If you think the Android project google-authenticator-android 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 Google Inc. All Rights Reserved.
 */*w w w  .  ja  v  a  2 s.  c o  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.google.android.apps.authenticator;

import android.app.Dialog;
import android.content.Context;
import android.content.SharedPreferences;
import android.net.Uri;

/**
 * Interface for providing functionality not available in Market builds without having to modify
 * the codebase shared between the Market and non-Market builds.
 *
 * @author klyubin@google.com (Alex Klyubin)
 */
public interface OptionalFeatures {

  /**
   * Invoked when the {@link AuthenticatorActivity} {@code onCreate} is almost done.
   */
  void onAuthenticatorActivityCreated(AuthenticatorActivity activity);

  /**
   * Invoked when the {@link AuthenticatorActivity} saves an account/seed.
   */
  void onAuthenticatorActivityAccountSaved(Context context, String account);

  /**
   * Creates the {@link OtpSource} instance used for OTP generation by the app.
   */
  OtpSource createOtpSource(AccountDb accountDb, TotpClock totpClock);

  /**
   * Invoked when a HOTP OTP could not be generated by {@link AuthenticatorActivity}
   * for the provided account.
   */
  void onAuthenticatorActivityGetNextOtpFailed(
      AuthenticatorActivity activity, String accountName, OtpSourceException exception);

  /**
   * Invoked by {@link AuthenticatorActivity#onCreateDialog(int)} for dialog IDs not directly
   * handled by the {@link AuthenticatorActivity} class.
   *
   * @return dialog or {@code null} for the default behavior.
   */
  Dialog onAuthenticatorActivityCreateDialog(AuthenticatorActivity activity, int id);

  /**
   * Invoked when {@link AuthenticatorActivity} was asked to initiate the Add Account flow.
   */
  void onAuthenticatorActivityAddAccount(AuthenticatorActivity activity);

  /**
   * Invoked when a URI has been scanned.
   *
   * @return {@code true} if the URI has been consumed by these optional features, {@code false}
   *         otherwise.
   */
  boolean interpretScanResult(Context context, Uri scanResult);

  /**
   * Invoked when data have been successfully imported from the old Authenticator app.
   */
  void onDataImportedFromOldApp(Context context);

  /**
   * Gets the {@link SharedPreferences} into which to import preferences from the old Authenticator
   * app.
   *
   * @return preferences or {@code null} to skip the importing of preferences.
   */
  SharedPreferences getSharedPreferencesForDataImportFromOldApp(Context context);

  /**
   * Appends the Learn more link to data import dialog text.
   *
   * @return text with the link.
   */
  String appendDataImportLearnMoreLink(Context context, String text);

}




Java Source Code List

com.google.android.apps.authenticator.AccountDb.java
com.google.android.apps.authenticator.AddOtherAccountActivity.java
com.google.android.apps.authenticator.AuthenticatorActivity.java
com.google.android.apps.authenticator.AuthenticatorApplication.java
com.google.android.apps.authenticator.Base32String.java
com.google.android.apps.authenticator.CheckCodeActivity.java
com.google.android.apps.authenticator.CountdownIndicator.java
com.google.android.apps.authenticator.EnterKeyActivity.java
com.google.android.apps.authenticator.FileUtilities.java
com.google.android.apps.authenticator.HexEncoding.java
com.google.android.apps.authenticator.MarketBuildOptionalFeatures.java
com.google.android.apps.authenticator.OptionalFeatures.java
com.google.android.apps.authenticator.OtpGenerationNotPermittedException.java
com.google.android.apps.authenticator.OtpProvider.java
com.google.android.apps.authenticator.OtpSourceException.java
com.google.android.apps.authenticator.OtpSource.java
com.google.android.apps.authenticator.PasscodeGenerator.java
com.google.android.apps.authenticator.Preconditions.java
com.google.android.apps.authenticator.RunOnThisLooperThreadExecutor.java
com.google.android.apps.authenticator.SettingsAboutActivity.java
com.google.android.apps.authenticator.SettingsActivity.java
com.google.android.apps.authenticator.TotpClock.java
com.google.android.apps.authenticator.TotpCountdownTask.java
com.google.android.apps.authenticator.TotpCounter.java
com.google.android.apps.authenticator.UserRowView.java
com.google.android.apps.authenticator.Utilities.java
com.google.android.apps.authenticator.dataimport.ExportServiceBasedImportController.java
com.google.android.apps.authenticator.dataimport.ImportController.java
com.google.android.apps.authenticator.dataimport.Importer.java
com.google.android.apps.authenticator.howitworks.IntroEnterCodeActivity.java
com.google.android.apps.authenticator.howitworks.IntroEnterPasswordActivity.java
com.google.android.apps.authenticator.howitworks.IntroVerifyDeviceActivity.java
com.google.android.apps.authenticator.testability.DependencyInjector.java
com.google.android.apps.authenticator.testability.HttpClientFactory.java
com.google.android.apps.authenticator.testability.SharedPreferencesRenamingDelegatingContext.java
com.google.android.apps.authenticator.testability.StartActivityListener.java
com.google.android.apps.authenticator.testability.TestableActivity.java
com.google.android.apps.authenticator.testability.TestablePreferenceActivity.java
com.google.android.apps.authenticator.timesync.AboutActivity.java
com.google.android.apps.authenticator.timesync.NetworkTimeProvider.java
com.google.android.apps.authenticator.timesync.SettingsTimeCorrectionActivity.java
com.google.android.apps.authenticator.timesync.SyncNowActivity.java
com.google.android.apps.authenticator.timesync.SyncNowController.java
com.google.android.apps.authenticator.wizard.WizardPageActivity.java