public void finishActivity(IBinder token) { ActivityClientRecord r = getActivityRecord(token); if (r != null) { Activity activity = r.activity; while (true) { // We shouldn't use Activity.getParent(), // because It may be overwritten. Activity parent = mirror.android.app.Activity.mParent.get(activity); if (parent == null) { break; } activity = parent; } // We shouldn't use Activity.isFinishing(), // because It may be overwritten. if (!mirror.android.app.Activity.mFinished.get(activity)) { int resultCode = mirror.android.app.Activity.mResultCode.get(activity); Intent resultData = mirror.android.app.Activity.mResultData.get(activity); ActivityManagerCompat.finishActivity(token, resultCode, resultData); mirror.android.app.Activity.mFinished.set(activity, true); } } }
public void finishActivity(IBinder token) { ActivityClientRecord r = getActivityRecord(token); if (r != null) { Activity activity = r.activity; while (true) { // We shouldn't use Activity.getParent(), // because It may be overwritten. Activity parent = mirror.android.app.Activity.mParent.get(activity); if (parent == null) { break; } activity = parent; } // We shouldn't use Activity.isFinishing(), // because It may be overwritten. if (!mirror.android.app.Activity.mFinished.get(activity)) { int resultCode = mirror.android.app.Activity.mResultCode.get(activity); Intent resultData = mirror.android.app.Activity.mResultData.get(activity); ActivityManagerCompat.finishActivity(token, resultCode, resultData); mirror.android.app.Activity.mFinished.set(activity, true); } } }
public void finishActivity(IBinder token) { ActivityClientRecord r = getActivityRecord(token); if (r != null) { Activity activity = r.activity; while (true) { // We shouldn't use Activity.getParent(), // because It may be overwritten. Activity parent = mirror.android.app.Activity.mParent.get(activity); if (parent == null) { break; } activity = parent; } // We shouldn't use Activity.isFinishing(), // because It may be overwritten. if (!mirror.android.app.Activity.mFinished.get(activity)) { int resultCode = mirror.android.app.Activity.mResultCode.get(activity); Intent resultData = mirror.android.app.Activity.mResultData.get(activity); ActivityManagerCompat.finishActivity(token, resultCode, resultData); mirror.android.app.Activity.mFinished.set(activity, true); } } }