我正在使用共享prefrence来存储从gps收到的Location值,如何从getAppData()中检索相同的值?

时间:2015-08-13 14:11:54

标签: java android gps sharedpreferences

public class StorageHelper {


public static final String PREFS_NAME = "LOCATION_DATA";

public static void saveAppData(Context ctx, String key, Location value){
    SharedPreferences settings = ctx.getSharedPreferences(PREFS_NAME, 0);
    SharedPreferences.Editor editor = settings.edit();
    String lat =Double.toString(value.getLatitude());
    String lon=Double.toString(value.getLongitude());
    Set location = new HashSet();
    location.add(lat);
    location.add(lon);
    editor.putStringSet(key,location);
    editor.apply();
}

public static String getAppData(Context ctx, String key){
    SharedPreferences settings = ctx.getSharedPreferences(PREFS_NAME, 0);



    return settings.getStringSet(key,);
}

}

传递return settings.getStringSet()的第二个参数是什么? 我应该发送java.lang参数,但Set类型为java.utiity

1 个答案:

答案 0 :(得分:0)

documentation中所述,第二个参数是在没有与使用的key值关联的对象时返回的值。您可以使用空集或null,但在调用此方法后,您应该检查非空值。