2016-05-26 9 views
-1

Ich muss einen einfachen Chat für Android schreiben. Ich möchte den Kraftstoff verwenden, aber ich kann nicht herausfinden, wie man die Einstellungen vornimmt. Was sollte auf dem Server (PHP) und dem Client (Android) getan werden?Android und GCM

+1

sorry, Art und Weise zu breit eine Frage hier

String login = SettingsService.settings.login; 

Sie Einstellungen mit aktualisieren –

Antwort

0

für Android: erstellen Einstellungen Modell:

public class SettingsModel { 
    public String login; 
    public String token; 
    ..... 
} 

eine andere Klasse hinzufügen mit Einstellungen für die Manipulation:

public class SettingsService { 

    private static String KEY = "mySettingsKeyCustomString"; 
    private static Context mContext; 

    public static SettingsModel settings; 

    public SettingsService(){ 
     mContext = MyApplication.getLastGrabContext(); // MyApplication extends Application 
     settings = getSettings(); 
    } 

    public static void saveSettings(){ 
     if(settings == null){ 
      settings = new SettingsModel(); 
     } 
     SharedPreferences.Editor editor = mContext 
       .getSharedPreferences(KEY, Activity.MODE_PRIVATE).edit(); 
     Gson gson = new Gson(); 
     String jsonSettings = gson.toJson(settings); 
     editor.putString("settings", jsonSettings); 
     editor.commit(); 
     settings = getSettings(); 
    } 


    public static SettingsModel getSettings() { 
     SharedPreferences editor = mContext.getSharedPreferences(KEY, 
       Activity.MODE_PRIVATE); 
     try{ 
      String jsonSettings = editor.getString("settings","settings"); 
      Gson gson = new Gson(); 
      settings = gson.fromJson(jsonSettings, SettingsModel.class); 
     }catch (Exception e){ 
      settings = new SettingsModel(); 
     } 

     return settings; 
    } 

} 

und jetzt zum Beispiel in Anwendungsklasse init Einstellungen in onCreate:

new SettingsService(); 

jetzt können Sie von überall aus anrufen erhalten Sie Ihre Einstellungen wie:

SettingsService.settings.login = "new login"; 
SettingsService.saveSettings(); 

sicherstellen, dass Sie in Ihrem gradle haben:

compile 'com.google.code.gson:gson:2.4'