Android开发经验谈之应用间数据共享

对于应用程序之间的数据共享,Android提供了比较灵活的方式,相关的开发经验下面是Android123平时使用的方法。

  1. 简单配置文件:

   SharedPreferences方式存储的配置文件,我们在各个应用间可以通过getSharedPreferences("Android123", Context.MODE_PRIVATE);  这样的方式存储,最后是共享模式,这里使用了私有,而通过全局读、全局写可以让其他的应用访问,通过createPackageContext方法,但是在Android 1.5 以后,共享访问需要相同UID和签名才可以访问。

2. SQLite数据库文件

  对于一些较为复杂的配置或数据,在Android平台上我们一般使用SQLite数据库存储,对于共享我们可以提供ContentProvider接口来实现,我们虽然可以获取当前应用的数据库保存位置,通过Context的getDatabasePath(String name)这个方法,由于应用的PackageName比较长可能会发生变动,Android提供了类似Intent的方式来匹配一些Uri,比如说电话拨号为 tel:// 而对于网址可以使用 http:// 对于定做坐标使用geo://,而我们的数据库可以通过UriMatcher类的addURI添加一些Uri,通过隐式Intent方式实现自己的处理方式,具体的大家可以查看短信应用的开源代码 Mms.git 了解。

3. 对于运行中的高性能数据共享

在Android中共享内存方法可以使用Linux底层的mmap方式,对于跨进程访问,使用IPC,当然Android还提供了AIDL远程服务来实现数据绑定访问处理,所以说对于Android Service的开发,一定要记住通过Bind方式来开发,比较典型的有音乐播放器,Music.gif

你可能感兴趣的:(android,应用服务器,linux,sqlite,音乐)