Java 为什么使用Context.MODE\u PRIVATE或Context.MODE\u WRITABLE?
我对Java 为什么使用Context.MODE\u PRIVATE或Context.MODE\u WRITABLE?,java,android,facebook,Java,Android,Facebook,我对context.MODE\u PRIVATE或MODE\u可读写的理解是,这些函数为共享引用生成文件 我想知道context.getSharedReferences(KEY,context.MODE\u PRIVATE)和getSharedReferences(KEY,0)之间有什么区别 据我所知,getSharedReferences从xml文件夹检索其首选项。和Context.MODE_PRIVATE存储其文件。如果getSharedReferences(KEY,context.MODE
context.MODE\u PRIVATE
或MODE\u可读写
的理解是,这些函数为共享引用生成文件
我想知道context.getSharedReferences(KEY,context.MODE\u PRIVATE)
和getSharedReferences(KEY,0)之间有什么区别代码>
据我所知,getSharedReferences
从xml文件夹检索其首选项。和Context.MODE_PRIVATE
存储其文件。如果getSharedReferences(KEY,context.MODE\u PRIVATE)
和context.getSharedReferences(KEY,context.MODE\u PRIVATE)
都生成文件,为什么要使用context.getSharedReferences(KEY,context.MODE\u PRIVATE)
下面是我注意到的Facebook API的一部分Context.MODE\u PRIVATE
public static boolean save(Facebook session, Context context) {
Editor editor =
context.getSharedPreferences(KEY, Context.MODE_PRIVATE).edit();
editor.putString(TOKEN, session.getAccessToken());
editor.putLong(EXPIRES, session.getAccessExpires());
return editor.commit();
}
public static boolean restore(Facebook session, Context context) {
SharedPreferences savedSession =
context.getSharedPreferences(KEY, Context.MODE_PRIVATE);
session.setAccessToken(savedSession.getString(TOKEN, null));
session.setAccessExpires(savedSession.getLong(EXPIRES, 0));
return session.isSessionValid();
}
没有上下文。模式可写
或上下文。模式可读
。所以我假设你说的是Context.MODE\u WORLD\u writeable
或Context.MODE\u WORLD\u READABLE
。(并不是说这实际上与您的问题有关……)
我想知道这两者的区别是什么
context.getSharedPreferences(KEY, Context.MODE_PRIVATE)
及
context.getSharedPreferences(KEY, 0);
没有功能上的区别<代码>上下文。MODE_PRIVATE
是一个值为零的int
常量;有关详细信息,请参阅上面链接的javadoc。但前者更具可读性,因此从代码风格的角度来看更可取。@SehoLee-“所以……它们之间没有功能上的区别?”这就是我刚才所说的。。。