Fix the ActivityLifecycleTests#testLocalRecreate flakiness

IACC#activityTopResumedStateLost was reported to ATMS later than
IACC#activityPaused sometimes because one is one-way binder call
while the other one is two-way binder.

Also make IACC#activityTopResumedStateLost a two-way binder

Bug: 185810414
Test: atest ActivityLifecycleTests
Change-Id: Ib87de693f5ebcfd836208924aa8fc2a035ca7c82
This commit is contained in:
Louis Chang
2021-04-20 13:09:23 +08:00
parent a3c90ed855
commit f3ae7ab1ea

View File

@@ -37,7 +37,11 @@ import com.android.internal.policy.IKeyguardDismissCallback;
interface IActivityClientController {
oneway void activityIdle(in IBinder token, in Configuration config, in boolean stopProfiling);
oneway void activityResumed(in IBinder token, in boolean handleSplashScreenExit);
oneway void activityTopResumedStateLost();
/**
* This call is not one-way because {@link #activityPaused()) is not one-way, or
* the top-resumed-lost could be reported after activity paused.
*/
void activityTopResumedStateLost();
/**
* Notifies that the activity has completed paused. This call is not one-way because it can make
* consecutive launch in the same process more coherent. About the order of binder call, it