SharedPreferences之不同应用的数据共享

上一篇文章提到了SharedPreferences,现在讲一下,如何让不同的应用程序共享SharedPreferences保存的数据。其实

比较简单,只需要在调用目标程序的SharedPreferences的Activity中这样操作:

假设上一个应用名为:com.up.SharedPreferencesTest

	Context otherAppsContext = null;
			try {
				otherAppsContext = createPackageContext("<span style="font-size:18px;">com.up.</span><span style="font-size:18px;">SharedPreferencesTest</span>", Context.CONTEXT_IGNORE_SECURITY);
			} catch (NameNotFoundException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
			service=new PreferencesService(otherAppsContext);
			 Map<String, String> params = null;
			 try {
				params = service.getPreferences();
			} catch (Exception e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
			String pathName = params.get("name");

本代码请结合上篇博文,一起看:http://blog.csdn.net/gisredevelopment/article/details/39700551

另外,要注意SharedPreferences的四种操作模式:

Context.MODE_PRIVATE
Context.MODE_APPEND
Context.MODE_WORLD_READABLE
Context.MODE_WORLD_WRITEABLE
 
Context.MODE_PRIVATE:为默认操作模式,代表该文件是私有数据,只能被应用本身访问,在该模式下,写入的内容会覆盖原文件的内容
Context.MODE_APPEND:模式会检查文件是否存在,存在就往文件追加内容,否则就创建新文件.
Context.MODE_WORLD_READABLE和Context.MODE_WORLD_WRITEABLE用来控制其他应用是否有权限读写该文件.
MODE_WORLD_READABLE:表示当前文件可以被其他应用读取.
MODE_WORLD_WRITEABLE:表示当前文件可以被其他应用写入.

我们这里用的是MODE_WORLD_READABLE,允许其他应用读取,实现共享。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SharedPreferencesAndroid平台提供的一种轻量级的数据存储方式,用于存储一些简单的键值对数据。SharedPreferences存储的数据可以被应用程序和其他应用程序(如果获得相应权限)共享,通常用于存储应用程序的配置信息、用户偏好设置等。 SharedPreferences应用场景包括但不限于以下几个方面: 1. 存储应用程序的配置信息:应用程序的配置信息通常包括一些开关、标志位等,例如是否开启消息推送、是否开启震动等,这些信息可以使用SharedPreferences存储,方便快捷。 2. 存储用户偏好设置:应用程序的用户偏好设置通常包括一些用户习惯、偏好等,例如字体大小、颜色主题等,这些信息可以使用SharedPreferences存储,方便用户在下次打开应用程序时能够保持上一次的设置。 3. 存储应用程序的登录信息:应用程序的登录信息通常包括用户的账号、密码等,这些信息可以使用SharedPreferences存储,方便用户在下次打开应用程序时无需重新登录。 使用SharedPreferences存储数据的具体步骤如下: 1. 获取SharedPreferences对象:可以通过Context的getSharedPreferences()方法或Activity的getPreferences()方法获取SharedPreferences对象。 2. 存储数据:可以通过SharedPreferences.Editor对象的putBoolean()、putInt()、putString()等方法存储数据。 3. 提交数据:必须通过SharedPreferences.Editor对象的commit()或apply()方法提交数据,才能将数据真正地保存到SharedPreferences中。 例如,存储一个Boolean类型的数据可以按照以下代码进行: ``` SharedPreferences sharedPreferences = getSharedPreferences("config", MODE_PRIVATE); SharedPreferences.Editor editor = sharedPreferences.edit(); editor.putBoolean("is_push_enabled", true); editor.commit(); ``` 以上就是SharedPreferences应用场景及使用方法的简单介绍。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值