1

Доброго дня. Пытаюсь потихоньку осваивать кросс-платформенную разработку с помощью Xamarin, и в своих потугах добрался до этапа, когда при определенных ошибках приложение должно само завершить свою работу. И с удивлением обнаружил, что мануалов по правильному завершению работы нет. Возможно конечно, я их просто не нашел, но что делать дальше все равно непонятно. Нигде даже не указанно, является ли эта процедура платформенно-зависимой или реализуется общей логикой. В общем, если кто знает, как это делать, или поделиться ссылкой, буду очень благодарен.

2 Answers2

1

Закрытие приложения зависит от конкретной платформы. То есть реализация закрытия приложения у каждой платформы свое.

Android: Process.KillProcess(Process.MyPid());

IOS: Thread.CurrentThread.Abort();

Windows: Application.Current.Exit();

Alexey
  • 189
1

для Андроида

public class MainActivity 

MainPage.closeAction += qwe;

void qwe()
    {
        FinishAndRemoveTask();
    }

в

MainPage
static public Action closeAction;

private void BtnExit_Clicked(object sender, EventArgs e)
    {         
        Process.KillProcess(Process.MyPid());
        closeAction.Invoke();
    }
Ara
  • 11
  • добавил Process.KillProcess(Process.MyPid()); так как приложение убивается, а процесс и объекты остаются висеть – Ara Apr 24 '19 at 06:46