Android和GCM

时间:2016-05-26 20:57:18

标签: php android google-cloud-messaging

我需要为Android编写简单的聊天内容。我想使用燃料,但我无法弄清楚如何进行设置。应该在服务器(php)和客户端(android)上做什么?

1 个答案:

答案 0 :(得分:0)

for android: 创建设置模型:

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

使用设置添加另一个类进行操作:

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;
    }

}

现在例如在onCreate中的Application类init设置中:

new SettingsService();

现在您可以随时随地拨打电话获取以下设置:

String login = SettingsService.settings.login;

您可以使用以下内容更新设置:

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

确保你的格斗:

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