Ich implementiere das MVP-Muster in einer Andorid-App und ich habe Zweifel, wo der beste Ort für die Überprüfung der Internetverbindung ist Normalerweise überprüfe ich vor einem Netzwerkanruf, ob eine Internetverbindung besteht.
Also, wo sollte ich es in der Aktivität oder im Presenter überprüfen? Ich denke, der Moderator wäre ein netter Ort, also entscheidet er, was zu tun ist, aber ich bin mir nicht 100% ig sicher, ob ich ihn in die Aktivität aufnehmen sollte und einen Anruf beim Moderator vermeiden sollte.
Ich denke nicht, dass Presenter ein guter Ort ist. Der Moderator sollte die neuen Daten aus dem Modell wie getData () fragen. Moderator sollte nicht wissen, ob es von der lokalen Datenbank oder vom Server stammt. Eine Überprüfung der Internetverbindung am Presenter ist also keine gute Idee.
Wenn Sie das Repository-Muster verwenden, fordert der Presenter das Modell / Repository auf, die Daten abzurufen. Das Modell sendet zuerst die lokalen Daten an den Präsentator. Parallel dazu sendet es eine Serveranfrage (wenn eine Netzwerkverbindung besteht), um neue Daten herunterzuladen, und sendet die neuen Daten an den Presenter.
Also ich denke, die Netzwerkprüfung muss im Repository / Modell sein. Sie könnten Util-Klasse haben, die den tatsächlichen Netzwerkprüfcode implementiert. Und diese Methode aus dem Repository aufrufen, wie AppUtil.isNetworkConnectionAvailable();
Weitere Informationen finden Sie unter Ссылка
Lösung: -
Sie sollten die Verfügbarkeit der Internetverbindung in der BaseActivity-Klasse prüfen und diese Aktivität dann erweitern, denke ich.
Ich mache das in meinem Projekt so: -
%Vor%