ISharedPreferences 接口
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
用于访问和修改由 Context#getSharedPreferences. 返回的首选项数据的接口。
[Android.Runtime.Register("android/content/SharedPreferences", "", "Android.Content.ISharedPreferencesInvoker")]
public interface ISharedPreferences : Android.Runtime.IJavaObject, IDisposable, Java.Interop.IJavaPeerable
[<Android.Runtime.Register("android/content/SharedPreferences", "", "Android.Content.ISharedPreferencesInvoker")>]
type ISharedPreferences = interface
interface IJavaObject
interface IDisposable
interface IJavaPeerable
- 属性
- 实现
注解
用于访问和修改由 Context#getSharedPreferences. 返回的首选项数据的接口。 对于任何特定的首选项集,所有客户端共享此类的单个实例。 对首选项的修改必须经过一个 Editor 对象,以确保首选项值在提交到存储时保持一致状态和控制。 从各种 get 方法返回的对象必须由应用程序视为不可变的。
共享首选项最适合存储有关用户喜欢如何体验应用的数据,例如,用户更喜欢特定 UI 主题,还是首选在列表中查看特定内容与网格。 为此,SharedPreferences 会反映更改Editor#commit() committed或Editor#apply() applied立即Editor<></em>,在持久保留这些更改之前。 在某些情况下(例如应用崩溃或终止)可能会丢失这些更改,即使 OnSharedPreferenceChangeListener 报告更改成功也是如此。 不建议使用共享首选项来存储对此类回退到以前状态(例如用户安全或隐私设置)敏感的数据。 有关其他高级数据持久性选项,请参阅 Room 或 DataStore。
<em>Note:</em> Common 实现保证当主机活动停止时,对首选项文件的未完成编辑将持久保存到磁盘。 在某些情况下(例如,在离开主机活动之前执行许多 Editor#commit() 操作或 Editor#apply() 操作),这可能会导致在生命周期转换事件和相关 ANR 错误期间阻止主线程。 有关更多详细信息,请参阅文档 Editor#commit() 和 Editor#apply()。
<em>注意:此类不支持跨多个进程使用。</em>
<div class=“special reference”><h3>Developer Guides</h3>
有关使用共享首选项的详细信息,请阅读 数据存储 开发人员指南。
</Div>
Java文档android.content.SharedPreferences。
本页的某些部分是根据 创建和共享的工作进行的修改,并根据 许可证中所述的条款使用。
属性
| 名称 | 说明 |
|---|---|
| All |
从首选项中检索所有值。 |
| Handle |
获取基础 Android 对象的 JNI 值。 (继承自 IJavaObject) |
| JniIdentityHashCode |
返回包装实例的值 |
| JniManagedPeerState |
托管对等方的状态。 (继承自 IJavaPeerable) |
| JniObjectReferenceControlBlock |
用于访问和修改由 |
| JniPeerMembers |
成员访问和调用支持。 (继承自 IJavaPeerable) |
| PeerReference |
返回JniObjectReference包装的Java对象实例。 (继承自 IJavaPeerable) |
方法
扩展方法
| 名称 | 说明 |
|---|---|
| GetJniTypeName(IJavaPeerable) |
获取实例 |
| JavaAs<TResult>(IJavaPeerable) |
尝试强制 |
| JavaCast<TResult>(IJavaObject) |
执行 Android 运行时检查的类型转换。 |
| JavaCast<TResult>(IJavaObject) |
用于访问和修改由 |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
尝试强制 |