Хорошо, так что я нашел рабочее решение, но оно очень нечистое:
Когда я начинаю свою деятельность A1 внутри операции X0 , я даю тип операции X0 в виде строки (используя флаг).
Intent newActivity = new Intent(this, typeof(A1));
newActivity.PutExtra("endActivity", typeof(X0).Name);
StartActivity(newActivity);
На занятии A1 , я получаю флаг вот так:
string endActivityType = Intent.GetStringExtra("endActivity");
Затем, когда я начинаю занятие A2 и A3 , я продолжаю указывать тип X0 в виде строки, используя флаг:
Intent newActivity = new Intent(this, typeof(A2));
newActivity.PutExtra("endActivity", endActivityType);
StartActivity(newActivity);
И как только я хочу вернуться к X0 в своей деятельности A3 , я делаю:
Type typeX0 = Type.GetType("MyAppNamespace." + endActivityType);
Intent intent = new Intent(this, typeX0);
intent.AddFlags(ActivityFlags.ClearTop | ActivityFlags.SingleTop);
StartActivity(intent);
как сказал Кашиш.