2017-02-06 3 views
0

Wie schreibt man die Daten von Web-API in eine Datei und wie man Daten aus dieser Datei liest, wenn kein Internet?Schreiben in Datei und Lesen von Datei, wenn kein Internet

public static boolean isConnectingToInternet(Context _context) { 
     ConnectivityManager connectivity = (ConnectivityManager) _context.getSystemService(Context.CONNECTIVITY_SERVICE); 
     if (connectivity != null) { 
      NetworkInfo[] info = connectivity.getAllNetworkInfo(); 
      if (info != null) 
       for (int i = 0; i < info.length; i++) 
        if (info[i].getState() == NetworkInfo.State.CONNECTED) { 
         return true; 
        } 

     } 
     return false; 
    } 
+0

Sie müssen mindestens einmal Ihre App über das Internet laufen, und dann speichern Sie Ihre Datei in NSUserDefault, damit Sie als Offline-Modus zugreifen können. – iDeveloper

+0

Ich schlage vor, Sie schreiben es nicht in den 'NSUserDefault', sondern nur in eine Datei im Dokumentenverzeichnis. Der 'NSUserDefault' ist nicht dafür gedacht, große Datenmengen zu speichern, sondern nur kleine Einstellungen. – rckoenes

Antwort

0

Sie können einen Webdienst nicht im Offline-Modus anfordern. Was ist das Beste, was Sie tun können, ist, können Sie Client Cash (Einstellung Max-Alter, s-maxage, max-stale in Anfrage Header) oder einfach speichern Sie die Daten von Ihrem Web-API in einer lokalen Datenbank wie SQLite oder Realm.

+0

Danke :). Ich hatte das Gleiche getan. –