Package org.robolectric.shadows
Class ShadowActivity
java.lang.Object
org.robolectric.shadows.ShadowContextWrapper
org.robolectric.shadows.ShadowContextThemeWrapper
org.robolectric.shadows.ShadowActivity
- Direct Known Subclasses:
ShadowActivityGroup
@Implements(value=android.app.Activity.class,
looseSignatures=true)
public class ShadowActivity
extends ShadowContextThemeWrapper
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
Container object to hold an Intent, together with the requestCode used in a call toActivity.startActivityForResult(Intent, int)
static class
Class to holds details of a startIntentSenderForResult request.static class
Class to hold a permissions request, including its request code. -
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescription<T extends Activity>
voidattachController
(ActivityController controller) For internal use only.void
callAttach
(Intent intent) void
callAttach
(Intent intent, Bundle activityOptions) void
callAttach
(Intent intent, Bundle activityOptions, Object lastNonConfigurationInstances) void
callAttach
(Intent intent, Bundle activityOptions, Object lastNonConfigurationInstances, Configuration overrideConfig) void
callOnActivityResult
(int requestCode, int resultCode, Intent resultData) Deprecated.void
callOnGetDirectActions
(CancellationSignal cancellationSignal, Consumer<List<DirectAction>> callback) Calls Activity#onGetDirectActions with the given parameters.boolean
clickMenuItem
(int menuItemResId) Perform a click on a menu item.protected final void
dismissDialog
(int id) protected void
protected boolean
protected View
findViewById
(int id) Checks to ensure that thecontentView
has been setprotected void
finish()
protected void
protected void
protected ComponentName
protected String
protected View
int
getDialogById
(int dialogId) Gets the last startIntentSenderForResult request made to this activity.protected Object
Gets the last permission request submitted to this activity.protected LayoutInflater
protected MenuInflater
Consumes and returns the nextIntent
on the started activities for results stack.Return the options menu.protected final Activity
int
int
boolean
protected int
int
boolean
protected Object
protected int
boolean
protected final int
protected Window
Constructs a new Window (aPhoneWindow
) if no window has previously been set.boolean
void
Initializes the associated Activity with anVoiceInteractor
instance.void
internalCallDispatchActivityResult
(String who, int requestCode, int resultCode, Intent data) For internal use only.protected boolean
Returns whetherfinish()
was called.protected boolean
protected boolean
boolean
Deprecated.protected final boolean
protected boolean
moveTaskToBack
(boolean nonRoot) protected void
protected boolean
onCreateOptionsMenu
(Menu menu) protected void
protected void
overridePendingTransition
(int enterAnim, int exitAnim) Returns the most recentIntent
started byActivity.startActivityForResult(Intent, int)
without consuming it.void
receiveResult
(Intent requestIntent, int resultCode, Intent resultIntent) protected void
recreate()
protected final void
removeDialog
(int id) protected void
protected final void
requestPermissions
(String[] permissions, int requestCode) void
protected void
runOnUiThread
(Runnable action) void
setApplication
(Application application) void
setCallingActivity
(ComponentName activityName) Sets the calling activity that will be reflected inActivity.getCallingActivity()
andActivity.getCallingPackage()
.void
setCallingPackage
(String packageName) Sets the calling package that will be reflected inActivity.getCallingActivity()
andActivity.getCallingPackage()
.void
setCurrentFocus
(View view) protected void
setDefaultKeyMode
(int keyMode) void
setInMultiWindowMode
(boolean value) Changes state ofisInMultiWindowMode()
method.void
setIsTaskRoot
(boolean isRoot) void
setLastNonConfigurationInstance
(Object lastNonConfigurationInstance) Deprecated.void
Allow setting of Parent fragmentActivity (for unit testing purposes only)protected void
setRequestedOrientation
(int requestedOrientation) protected final void
setResult
(int resultCode) protected final void
protected void
setShowWhenLocked
(boolean showWhenLocked) void
setThrowIntentSenderException
(boolean throwIntentSenderException) Sets if startIntentSenderForRequestCode will throw an IntentSender.SendIntentException.protected void
setTurnScreenOn
(boolean turnScreenOn) protected final void
setVolumeControlStream
(int streamType) void
protected final void
showDialog
(int id) protected final boolean
showDialog
(int id, Bundle bundle) void
startIntentSenderForResult
(IntentSender intentSender, int requestCode, Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags, Bundle options) protected void
Starts a lock task.protected void
protected void
Stops a lock task.protected void
Methods inherited from class org.robolectric.shadows.ShadowContextThemeWrapper
callGetThemeResId
Methods inherited from class org.robolectric.shadows.ShadowContextWrapper
clearBroadcastIntents, clearNextStartedActivities, clearStartedServices, denyPermissions, denyPermissions, getAllStartedServices, getBroadcastIntents, getBroadcastIntentsForUser, getBroadcastOptions, getNextStartedActivity, getNextStartedService, getNextStoppedService, grantPermissions, grantPermissions, peekNextStartedActivity, peekNextStartedService, removeSystemService
-
Field Details
-
realActivity
-
-
Constructor Details
-
ShadowActivity
public ShadowActivity()
-
-
Method Details
-
setApplication
-
callAttach
-
callAttach
-
callAttach
-
callAttach
public void callAttach(Intent intent, @Nullable Bundle activityOptions, @Nullable Object lastNonConfigurationInstances, @Nullable Configuration overrideConfig) -
setCallingActivity
Sets the calling activity that will be reflected inActivity.getCallingActivity()
andActivity.getCallingPackage()
. -
getCallingActivity
-
setCallingPackage
Sets the calling package that will be reflected inActivity.getCallingActivity()
andActivity.getCallingPackage()
.Activity name defaults to some default value.
-
getCallingPackage
-
setDefaultKeyMode
-
getDefaultKeymode
public int getDefaultKeymode() -
setShowWhenLocked
-
getShowWhenLocked
@RequiresApi(api=27) public boolean getShowWhenLocked() -
setTurnScreenOn
-
getTurnScreenOn
@RequiresApi(api=27) public boolean getTurnScreenOn() -
setResult
-
setResult
-
getLayoutInflater
-
getMenuInflater
-
findViewById
Checks to ensure that thecontentView
has been set- Parameters:
id
- ID of the view to find- Returns:
- the view
- Throws:
RuntimeException
- if thecontentView
has not been called first
-
getParent
-
setParent
Allow setting of Parent fragmentActivity (for unit testing purposes only)- Parameters:
parent
- Parent fragmentActivity to set on this fragmentActivity
-
onBackPressed
-
finish
-
finishAndRemoveTask
-
finishAffinity
-
resetIsFinishing
public void resetIsFinishing() -
isFinishing
Returns whetherfinish()
was called.Note: this method seems redundant, but removing it will cause problems for Mockito spies of Activities that call
Activity.finish()
followed byActivity.isFinishing()
. This is because `finish` modifies the members ofrealActivity
, so `isFinishing` should refer to those same members. -
getWindow
Constructs a new Window (aPhoneWindow
) if no window has previously been set.- Returns:
- the window associated with this Activity
-
getSplashScreen
- Returns:
- fake SplashScreen
-
setWindow
-
runOnUiThread
-
setRequestedOrientation
-
getRequestedOrientation
-
getTaskId
-
startIntentSenderForResult
@Implementation public void startIntentSenderForResult(IntentSender intentSender, int requestCode, @Nullable Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags, Bundle options) throws IntentSender.SendIntentException - Throws:
IntentSender.SendIntentException
-
reportFullyDrawn
-
getReportFullyDrawn
public boolean getReportFullyDrawn()- Returns:
- whether
ReportFullyDrawn()
methods has been called.
-
getContentView
- Returns:
- the
contentView
set by one of thesetContentView()
methods
-
getResultCode
public int getResultCode()- Returns:
- the
resultCode
set by one of thesetResult()
methods
-
getResultIntent
- Returns:
- the
Intent
set bysetResult(int, android.content.Intent)
-
getNextStartedActivityForResult
Consumes and returns the nextIntent
on the started activities for results stack.- Overrides:
getNextStartedActivityForResult
in classShadowContextWrapper
- Returns:
- the next started
Intent
for an activity, wrapped in anShadowActivity.IntentForResult
object
-
peekNextStartedActivityForResult
Returns the most recentIntent
started byActivity.startActivityForResult(Intent, int)
without consuming it.- Overrides:
peekNextStartedActivityForResult
in classShadowContextWrapper
- Returns:
- the most recently started
Intent
, wrapped in anShadowActivity.IntentForResult
object
-
getLastNonConfigurationInstance
-
setLastNonConfigurationInstance
Deprecated. -
setCurrentFocus
- Parameters:
view
- View to focus.
-
getCurrentFocus
-
getPendingTransitionEnterAnimationResourceId
public int getPendingTransitionEnterAnimationResourceId() -
getPendingTransitionExitAnimationResourceId
public int getPendingTransitionExitAnimationResourceId() -
onCreateOptionsMenu
-
getOptionsMenu
Return the options menu.- Returns:
- Options menu.
-
clickMenuItem
public boolean clickMenuItem(int menuItemResId) Perform a click on a menu item.- Parameters:
menuItemResId
- Menu item resource ID.- Returns:
- True if the click was handled, false otherwise.
-
callOnActivityResult
Deprecated. -
internalCallDispatchActivityResult
public void internalCallDispatchActivityResult(String who, int requestCode, int resultCode, Intent data) For internal use only. Not for public use. -
attachController
For internal use only. Not for public use. -
setThrowIntentSenderException
public void setThrowIntentSenderException(boolean throwIntentSenderException) Sets if startIntentSenderForRequestCode will throw an IntentSender.SendIntentException. -
receiveResult
-
showDialog
-
dismissDialog
-
removeDialog
-
showDialog
-
setIsTaskRoot
public void setIsTaskRoot(boolean isRoot) -
isTaskRoot
-
getLastShownDialogId
- Returns:
- the dialog resource id passed into
Activity.showDialog(int, Bundle)
orActivity.showDialog(int)
-
hasCancelledPendingTransitions
public boolean hasCancelledPendingTransitions() -
overridePendingTransition
-
getDialogById
-
onDestroy
-
recreate
-
startManagingCursor
-
stopManagingCursor
-
getManagedCursors
-
setVolumeControlStream
-
getVolumeControlStream
-
requestPermissions
@Implementation(minSdk=23) protected final void requestPermissions(String[] permissions, int requestCode) -
startLockTask
Starts a lock task.The status of the lock task can be verified using
isLockTask()
method. Otherwise this implementation has no effect. -
stopLockTask
Stops a lock task.The status of the lock task can be verified using
isLockTask()
method. Otherwise this implementation has no effect. -
isLockTask
Deprecated.UseActivityManager.getLockTaskModeState()
instead.Returns if the activity is in the lock task mode. -
setInMultiWindowMode
public void setInMultiWindowMode(boolean value) Changes state ofisInMultiWindowMode()
method. -
isInMultiWindowMode
-
isInPictureInPictureMode
-
enterPictureInPictureMode
-
enterPictureInPictureMode
@Implementation(minSdk=26) protected boolean enterPictureInPictureMode(PictureInPictureParams params) -
moveTaskToBack
-
getLastIntentSenderRequest
Gets the last startIntentSenderForResult request made to this activity.- Returns:
- The IntentSender request details.
-
getLastRequestedPermission
Gets the last permission request submitted to this activity.- Returns:
- The permission request details.
-
initializeVoiceInteractor
public void initializeVoiceInteractor()Initializes the associated Activity with anVoiceInteractor
instance. SubsequentActivity.getVoiceInteractor()
calls on the associated activity will return aVoiceInteractor
instance -
callOnGetDirectActions
public void callOnGetDirectActions(CancellationSignal cancellationSignal, Consumer<List<DirectAction>> callback) Calls Activity#onGetDirectActions with the given parameters. This method also simulates the Parcel serialization/deserialization which occurs when assistant requests DirectAction.
-
ActivityManager.getLockTaskModeState()
instead.