public class OAuthActivity extends android.app.Activity implements ChooseAuthenticationFragment.OnAuthenticationChosen, OAuthWebView.OAuthWebViewClient.WebEventListener, OAuthWebView.OnPageFinishedListener
Activity.RESULT_CANCELED together will a error message in
the intent extra.| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
AUTH_CODE |
static java.lang.String |
AUTH_INFO |
static int |
AUTH_TYPE_APP |
static int |
AUTH_TYPE_WEBVIEW |
static java.lang.String |
EXTRA_DISABLE_ACCOUNT_CHOOSING
An optional boolean that can be set when creating the intent to launch this activity.
|
static java.lang.String |
EXTRA_SESSION |
static java.lang.String |
EXTRA_USER_ID_RESTRICTION |
protected static java.lang.String |
IS_LOGGING_IN_VIA_BOX_APP |
protected static java.lang.String |
LOGIN_VIA_BOX_APP |
protected OAuthWebView.OAuthWebViewClient |
oauthClient |
protected OAuthWebView |
oauthView |
static int |
REQUEST_BOX_APP_FOR_AUTH_CODE |
static java.lang.String |
USER_ID |
DEFAULT_KEYS_DIALER, DEFAULT_KEYS_DISABLE, DEFAULT_KEYS_SEARCH_GLOBAL, DEFAULT_KEYS_SEARCH_LOCAL, DEFAULT_KEYS_SHORTCUT, FOCUSED_STATE_SET, RESULT_CANCELED, RESULT_FIRST_USER, RESULT_OKACCESSIBILITY_SERVICE, ACCOUNT_SERVICE, ACTIVITY_SERVICE, ALARM_SERVICE, APP_OPS_SERVICE, APPWIDGET_SERVICE, AUDIO_SERVICE, BATTERY_SERVICE, BIND_ABOVE_CLIENT, BIND_ADJUST_WITH_ACTIVITY, BIND_ALLOW_OOM_MANAGEMENT, BIND_AUTO_CREATE, BIND_DEBUG_UNBIND, BIND_IMPORTANT, BIND_NOT_FOREGROUND, BIND_WAIVE_PRIORITY, BLUETOOTH_SERVICE, CAMERA_SERVICE, CAPTIONING_SERVICE, CARRIER_CONFIG_SERVICE, CLIPBOARD_SERVICE, CONNECTIVITY_SERVICE, CONSUMER_IR_SERVICE, CONTEXT_IGNORE_SECURITY, CONTEXT_INCLUDE_CODE, CONTEXT_RESTRICTED, DEVICE_POLICY_SERVICE, DISPLAY_SERVICE, DOWNLOAD_SERVICE, DROPBOX_SERVICE, FINGERPRINT_SERVICE, INPUT_METHOD_SERVICE, INPUT_SERVICE, JOB_SCHEDULER_SERVICE, KEYGUARD_SERVICE, LAUNCHER_APPS_SERVICE, LAYOUT_INFLATER_SERVICE, LOCATION_SERVICE, MEDIA_PROJECTION_SERVICE, MEDIA_ROUTER_SERVICE, MEDIA_SESSION_SERVICE, MIDI_SERVICE, MODE_APPEND, MODE_ENABLE_WRITE_AHEAD_LOGGING, MODE_MULTI_PROCESS, MODE_PRIVATE, MODE_WORLD_READABLE, MODE_WORLD_WRITEABLE, NETWORK_STATS_SERVICE, NFC_SERVICE, NOTIFICATION_SERVICE, NSD_SERVICE, POWER_SERVICE, PRINT_SERVICE, RESTRICTIONS_SERVICE, SEARCH_SERVICE, SENSOR_SERVICE, STORAGE_SERVICE, TELECOM_SERVICE, TELEPHONY_SERVICE, TELEPHONY_SUBSCRIPTION_SERVICE, TEXT_SERVICES_MANAGER_SERVICE, TV_INPUT_SERVICE, UI_MODE_SERVICE, USAGE_STATS_SERVICE, USB_SERVICE, USER_SERVICE, VIBRATOR_SERVICE, WALLPAPER_SERVICE, WIFI_P2P_SERVICE, WIFI_SERVICE, WINDOW_SERVICE| Constructor and Description |
|---|
OAuthActivity() |
| Modifier and Type | Method and Description |
|---|---|
static android.content.Intent |
createOAuthActivityIntent(android.content.Context context,
BoxSession session,
boolean loginViaBoxApp)
Create intent to launch OAuthActivity using information from the given session.
|
static android.content.Intent |
createOAuthActivityIntent(android.content.Context context,
java.lang.String clientId,
java.lang.String clientSecret,
java.lang.String redirectUrl,
boolean loginViaBoxApp)
Create intent to launch OAuthActivity.
|
protected OAuthWebView |
createOAuthView() |
protected OAuthWebView.OAuthWebViewClient |
createOAuthWebViewClient() |
protected void |
dismissSpinner() |
protected void |
dismissSpinnerAndFailAuthenticate(java.lang.Exception e) |
protected void |
dismissSpinnerAndFinishAuthenticate(BoxAuthentication.BoxAuthenticationInfo auth) |
void |
finish() |
protected android.content.Intent |
getBoxAuthApp() |
protected int |
getContentView() |
protected int |
getOAuthWebViewRId() |
protected void |
onActivityResult(int requestCode,
int resultCode,
android.content.Intent data) |
void |
onAuthenticationChosen(BoxAuthentication.BoxAuthenticationInfo authInfo) |
boolean |
onAuthFailure(OAuthWebView.AuthFailure failure)
Callback method to be called when authentication failed.
|
void |
onBackPressed() |
void |
onCreate(android.os.Bundle savedInstanceState) |
void |
onDestroy() |
void |
onDifferentAuthenticationChosen()
Called if a user chooses to login as a "different account".
|
void |
onPageFinished(android.webkit.WebView view,
java.lang.String url) |
void |
onReceivedAuthCode(java.lang.String code)
Callback method to be called when authentication code is received.
|
void |
onReceivedAuthCode(java.lang.String code,
java.lang.String baseDomain)
Callback method to be called when authentication code is received along with a base domain.
|
protected void |
onResume() |
protected void |
onSaveInstanceState(android.os.Bundle outState) |
protected android.app.Dialog |
showDialogWhileWaitingForAuthenticationAPICall()
If you don't need the dialog, just return null.
|
protected void |
showSpinner() |
protected void |
startMakingOAuthAPICall(java.lang.String code,
java.lang.String baseDomain)
Start to create OAuth after getting the code.
|
protected void |
startOAuth() |
addContentView, closeContextMenu, closeOptionsMenu, createPendingResult, dismissDialog, dispatchGenericMotionEvent, dispatchKeyEvent, dispatchKeyShortcutEvent, dispatchPopulateAccessibilityEvent, dispatchTouchEvent, dispatchTrackballEvent, dump, findViewById, finishActivity, finishActivityFromChild, finishAffinity, finishAfterTransition, finishAndRemoveTask, finishFromChild, getActionBar, getApplication, getCallingActivity, getCallingPackage, getChangingConfigurations, getComponentName, getContentScene, getContentTransitionManager, getCurrentFocus, getFragmentManager, getIntent, getLastNonConfigurationInstance, getLayoutInflater, getLoaderManager, getLocalClassName, getMediaController, getMenuInflater, getParent, getParentActivityIntent, getPreferences, getReferrer, getRequestedOrientation, getSearchEvent, getSystemService, getTaskId, getTitle, getTitleColor, getVoiceInteractor, getVolumeControlStream, getWindow, getWindowManager, hasWindowFocus, invalidateOptionsMenu, isChangingConfigurations, isChild, isDestroyed, isFinishing, isImmersive, isTaskRoot, isVoiceInteraction, isVoiceInteractionRoot, managedQuery, moveTaskToBack, navigateUpTo, navigateUpToFromChild, onActionModeFinished, onActionModeStarted, onActivityReenter, onApplyThemeResource, onAttachedToWindow, onAttachFragment, onChildTitleChanged, onConfigurationChanged, onContentChanged, onContextItemSelected, onContextMenuClosed, onCreate, onCreateContextMenu, onCreateDescription, onCreateDialog, onCreateDialog, onCreateNavigateUpTaskStack, onCreateOptionsMenu, onCreatePanelMenu, onCreatePanelView, onCreateThumbnail, onCreateView, onCreateView, onDetachedFromWindow, onEnterAnimationComplete, onGenericMotionEvent, onKeyDown, onKeyLongPress, onKeyMultiple, onKeyShortcut, onKeyUp, onLowMemory, onMenuItemSelected, onMenuOpened, onNavigateUp, onNavigateUpFromChild, onNewIntent, onOptionsItemSelected, onOptionsMenuClosed, onPanelClosed, onPause, onPostCreate, onPostCreate, onPostResume, onPrepareDialog, onPrepareDialog, onPrepareNavigateUpTaskStack, onPrepareOptionsMenu, onPreparePanel, onProvideAssistContent, onProvideAssistData, onProvideReferrer, onRequestPermissionsResult, onRestart, onRestoreInstanceState, onRestoreInstanceState, onRetainNonConfigurationInstance, onSaveInstanceState, onSearchRequested, onSearchRequested, onStart, onStateNotSaved, onStop, onTitleChanged, onTouchEvent, onTrackballEvent, onTrimMemory, onUserInteraction, onUserLeaveHint, onVisibleBehindCanceled, onWindowAttributesChanged, onWindowFocusChanged, onWindowStartingActionMode, onWindowStartingActionMode, openContextMenu, openOptionsMenu, overridePendingTransition, postponeEnterTransition, recreate, registerForContextMenu, releaseInstance, removeDialog, reportFullyDrawn, requestPermissions, requestVisibleBehind, requestWindowFeature, runOnUiThread, setActionBar, setContentTransitionManager, setContentView, setContentView, setContentView, setDefaultKeyMode, setEnterSharedElementCallback, setExitSharedElementCallback, setFeatureDrawable, setFeatureDrawableAlpha, setFeatureDrawableResource, setFeatureDrawableUri, setFinishOnTouchOutside, setImmersive, setIntent, setMediaController, setProgress, setProgressBarIndeterminate, setProgressBarIndeterminateVisibility, setProgressBarVisibility, setRequestedOrientation, setResult, setResult, setSecondaryProgress, setTaskDescription, setTitle, setTitle, setTitleColor, setVisible, setVolumeControlStream, shouldShowRequestPermissionRationale, shouldUpRecreateTask, showAssist, showDialog, showDialog, showLockTaskEscapeMessage, startActionMode, startActionMode, startActivities, startActivities, startActivity, startActivity, startActivityForResult, startActivityForResult, startActivityFromChild, startActivityFromChild, startActivityFromFragment, startActivityFromFragment, startActivityIfNeeded, startActivityIfNeeded, startIntentSender, startIntentSender, startIntentSenderForResult, startIntentSenderForResult, startIntentSenderFromChild, startIntentSenderFromChild, startLockTask, startManagingCursor, startNextMatchingActivity, startNextMatchingActivity, startPostponedEnterTransition, startSearch, stopLockTask, stopManagingCursor, takeKeyEvents, triggerSearch, unregisterForContextMenuapplyOverrideConfiguration, attachBaseContext, getResources, getTheme, setThemebindService, checkCallingOrSelfPermission, checkCallingOrSelfUriPermission, checkCallingPermission, checkCallingUriPermission, checkPermission, checkSelfPermission, checkUriPermission, checkUriPermission, clearWallpaper, createConfigurationContext, createDisplayContext, createPackageContext, databaseList, deleteDatabase, deleteFile, enforceCallingOrSelfPermission, enforceCallingOrSelfUriPermission, enforceCallingPermission, enforceCallingUriPermission, enforcePermission, enforceUriPermission, enforceUriPermission, fileList, getApplicationContext, getApplicationInfo, getAssets, getBaseContext, getCacheDir, getClassLoader, getCodeCacheDir, getContentResolver, getDatabasePath, getDir, getExternalCacheDir, getExternalCacheDirs, getExternalFilesDir, getExternalFilesDirs, getExternalMediaDirs, getFilesDir, getFileStreamPath, getMainLooper, getNoBackupFilesDir, getObbDir, getObbDirs, getPackageCodePath, getPackageManager, getPackageName, getPackageResourcePath, getSharedPreferences, getSystemServiceName, getWallpaper, getWallpaperDesiredMinimumHeight, getWallpaperDesiredMinimumWidth, grantUriPermission, isRestricted, openFileInput, openFileOutput, openOrCreateDatabase, openOrCreateDatabase, peekWallpaper, registerReceiver, registerReceiver, removeStickyBroadcast, removeStickyBroadcastAsUser, revokeUriPermission, sendBroadcast, sendBroadcast, sendBroadcastAsUser, sendBroadcastAsUser, sendOrderedBroadcast, sendOrderedBroadcast, sendOrderedBroadcastAsUser, sendStickyBroadcast, sendStickyBroadcastAsUser, sendStickyOrderedBroadcast, sendStickyOrderedBroadcastAsUser, setWallpaper, setWallpaper, startInstrumentation, startService, stopService, unbindService, unregisterReceiverpublic static final int REQUEST_BOX_APP_FOR_AUTH_CODE
public static final java.lang.String AUTH_CODE
public static final java.lang.String USER_ID
public static final java.lang.String EXTRA_USER_ID_RESTRICTION
public static final java.lang.String EXTRA_SESSION
public static final java.lang.String EXTRA_DISABLE_ACCOUNT_CHOOSING
public static final int AUTH_TYPE_WEBVIEW
public static final int AUTH_TYPE_APP
protected static final java.lang.String LOGIN_VIA_BOX_APP
protected static final java.lang.String IS_LOGGING_IN_VIA_BOX_APP
public static final java.lang.String AUTH_INFO
protected OAuthWebView oauthView
protected OAuthWebView.OAuthWebViewClient oauthClient
public void onCreate(android.os.Bundle savedInstanceState)
onCreate in class android.app.Activityprotected void onResume()
onResume in class android.app.Activityprotected void onSaveInstanceState(android.os.Bundle outState)
onSaveInstanceState in class android.app.Activitypublic void onReceivedAuthCode(java.lang.String code)
onReceivedAuthCode in interface OAuthWebView.OAuthWebViewClient.WebEventListenerpublic void onReceivedAuthCode(java.lang.String code,
java.lang.String baseDomain)
onReceivedAuthCode in interface OAuthWebView.OAuthWebViewClient.WebEventListenerpublic void finish()
finish in class android.app.Activitypublic void onPageFinished(android.webkit.WebView view,
java.lang.String url)
onPageFinished in interface OAuthWebView.OnPageFinishedListenerpublic boolean onAuthFailure(OAuthWebView.AuthFailure failure)
onAuthFailure in interface OAuthWebView.OAuthWebViewClient.WebEventListenerfailure - the failure that caused authentication to fail.protected int getContentView()
protected void startOAuth()
protected android.content.Intent getBoxAuthApp()
public void onBackPressed()
onBackPressed in class android.app.Activitypublic void onAuthenticationChosen(BoxAuthentication.BoxAuthenticationInfo authInfo)
onAuthenticationChosen in interface ChooseAuthenticationFragment.OnAuthenticationChosenauthInfo - the auth info chosen by the user, returns a new empty instance of DifferentAuthenticationInfo if the user chose to use a different account.public void onDifferentAuthenticationChosen()
ChooseAuthenticationFragment.OnAuthenticationChosenonDifferentAuthenticationChosen in interface ChooseAuthenticationFragment.OnAuthenticationChosenprotected void onActivityResult(int requestCode,
int resultCode,
android.content.Intent data)
onActivityResult in class android.app.Activityprotected void startMakingOAuthAPICall(java.lang.String code,
java.lang.String baseDomain)
code - OAuth 2 authorization codebaseDomain - base domain used for changing host if applicable.protected void dismissSpinnerAndFinishAuthenticate(BoxAuthentication.BoxAuthenticationInfo auth)
protected void dismissSpinnerAndFailAuthenticate(java.lang.Exception e)
protected OAuthWebView createOAuthView()
protected OAuthWebView.OAuthWebViewClient createOAuthWebViewClient()
protected int getOAuthWebViewRId()
protected android.app.Dialog showDialogWhileWaitingForAuthenticationAPICall()
protected void showSpinner()
protected void dismissSpinner()
public void onDestroy()
onDestroy in class android.app.Activitypublic static android.content.Intent createOAuthActivityIntent(android.content.Context context,
java.lang.String clientId,
java.lang.String clientSecret,
java.lang.String redirectUrl,
boolean loginViaBoxApp)
context - contextclientId - your box client idclientSecret - your box client secretredirectUrl - redirect url, if you already set redirect url in box dev console, leave this null
or use the same url, otherwise this field is required. You can use "http://localhost" if you don't have a redirect server.loginViaBoxApp - Whether login should be handled by the installed box android app. Set this to true only when you are sure or want
to make sure user installed box android app and want to use box android app to login.public static android.content.Intent createOAuthActivityIntent(android.content.Context context,
BoxSession session,
boolean loginViaBoxApp)
context - contextsession - the BoxSession to use to get parameters required to authenticate via this activity.loginViaBoxApp - Whether login should be handled by the installed box android app. Set this to true only when you are sure or want
to make sure user installed box android app and want to use box android app to login.