chen.yu
2018-05-23 07:37
采纳率: 100%
浏览 1.6k

Android怎么sp怎么确保多进程

Android里面的sp有时候不支持多进程,那我们我们怎么实现sp的多进程呢?

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

4条回答 默认 最新

  • Drink1993 2018-05-23 07:55
    已采纳

    一个sp文件只能被单个进程操作,不能多进程操作同一个sp文件。要想实现可以通跨进程通信方式 比如 基于binder的Messager AIDL socket

    点赞 评论
  • king_of_william 2018-05-23 07:42

    Context 的 getSharedPreference(String name, int mode)
    第二个参数 mode 可以指定 sp 的操作模式,同样在Context 我们可以看到产量 public static final int MODE_MULTI_PROCESS = 0X0004
    单设定这种模式的话是支持多进程读写的

    点赞 评论
  • weixin_42064875 2018-05-23 08:06

    一个sp文件只能被单个进程操作,如果会在不同的进程存取信息,则需要创建多个sp文件。
    比如上面的问题,你需要创建两个存储应用信息的sp文件,比如分别叫apkInfoA和apkInfoB,apkInfoA只会被A进程操作,apkInfoB只能被B进程操作。

    假如你需要在A进程获取存储在apkInfoB的一些信息,那你可以通过进程间传递数据的方式告诉B进程去apkInfoB拿数据,拿了数据后再传给进程A,反之一样。

    切记:
    一个sp文件只能被单个进程操作,不能多进程操作同一个sp文件。

    点赞 评论
  • Pipinggo 2018-05-23 08:23

    sp+ContentProvider解决问题的,之前遇到的问题,star了一发的,链接在这里:https://github.com/penglu20/SPHelper

    点赞 评论

相关推荐 更多相似问题