android上如何写配置文件
android上如何写配置文件:使用SharedPreferences
SharedPreferences是Android平台上一个轻量级的存储类,用来保存应用的一些常用配置,比如Activity状态,Activity暂停时,将此activity的状态保存到SharedPereferences中;当Activity重载,系统回调方法onSaveInstanceState时,再从SharedPreferences中将值取出。SharedPreferences提供了java常规的Long、Int、String等类型数据的保存接口。 SharedPreferences类似过去Windows系统上的ini配置文件,但是它分为多种权限,可以全局共享访问。提示最终是以xml方式来保存,整体效率来看不是特别的高,对于常规的轻量级而言比SQLite要好不少,如果真的存储量不大可以考虑自己定义文件格式。xml处理时Dalvik会通过自带底层的本地XML Parser解析,比如XMLpull方式,这样对于内存资源占用比较好
通过SharedPreferences可以保存程序的某些配置信息,而程序员不需要知道它到底以什么形式保存的,保存在了什么地方。
在Android系统中,SharedPreferences中的信息以XML文件的形式保存在 /data/data/PACKAGE_NAME/shared_prefs目录
获取SharedPreferences的两种方式:
1 调用Context对象的getSharedPreferences()方法
2 调用Activity对象的getPreferences()方法
两种方式的区别:
调用Context对象的getSharedPreferences()方法获得的SharedPreferences对象可以被同一应用程序下的其他组件共享.
调用Activity对象的getPreferences()方法获得的SharedPreferences对象只能在该Activity中使用.
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:表示当前文件可以被其他应用写入.
例子:
将数据保存至SharedPreferences:
SharedPreferencespreferences=getSharedPreferences("user",Context.MODE_PRIVATE);
Editor editor=preferences.edit();
String name="xixi";
String age="22";
editor.putString("name", name);
editor.putString("age", age);
editor.commit();
从SharedPreferences获取数据:
SharedPreferencespreferences=getSharedPreferences("user", Context.MODE_PRIVATE);
Stringname=preferences.getString("name", "defaultname");
Stringage=preferences.getString("age", "0");
android上如何写配置文件相关推荐
- 在“提示”框中:管理Android音频配置文件,Android上的Google书签和电缆固定
It's a Thursday afternoon and that tip-time-of-week again. This week we're looking at managing audio ...
- android 控件 堆叠_每次在Android上正确地向后堆叠
android 控件 堆叠 When navigating in a mobile app, the screens opened after one another form a stack, th ...
- java软件屏幕大小转换,android 用java写一个自动适配各种屏幕大小的工具
android 用java写一个自动适配各种屏幕大小的工具,假设我当前机器屏幕宽高为1920*1116,我页面某个组件的宽度为100px,那么在1280*800的机器上,按道理将应该是100/1920 ...
- Go编译android,go语言的程序跑在android上
之前写了一个检查页面的golang程序http://www.simonzhang.net/?p=1346.就用这个测试一下放到android上看看效果如何.但是我在windows上的golang还是产 ...
- android.mk 添加v7_在Android上以命令行方式移植FFmpeg
最近要做视频I帧提取和摘要生成的项目,在Android平台上的应用,经过调研,发现ffmpeg有很多相关功能的轮子,因此考虑将ffmpeg移植到Android平台.为了更好解耦和以及更多的文档参考,选 ...
- 【Android】在Android上使用OrmLite数据库框架 之 基本用法
转载自:http://blog.csdn.net/oo8_8oo/article/details/7302156 官网:http://ormlite.com/ 官方帮助,目录: http://orml ...
- Android 上的低功耗蓝牙实践
转载自:https://www.race604.com/android-ble-in-action/ 我今天分享的主题是 Android 上低功耗蓝牙的实践.这个主题比较小众.我在过去的一年多的时间里 ...
- 构建node.js基础镜像_在Android上构建Node.js应用程序
构建node.js基础镜像 by Aurélien Giraud 通过AurélienGiraud 在Android上构建Node.js应用程序-第1部分:Termux,Vim和Node.js (Bu ...
- Android上的MVP:如何组织显示层的内容
MVP(Model View Presenter)模式是著名的MVC(Model View Controller)模式的一个演化版本,目前它在Android应用开发中越来越重要了,大家也都在讨论关于M ...
最新文章
- 如何创建.gitignore文件,忽略git不必要提交的文件
- 程序员那些年的斗智斗勇!!!
- Android性能测试-分析工具
- Android Studio 点击运行总是debug
- 在茫茫人海中发现相似的你——局部敏感哈希(LSH)
- 【PostgreSQL+PostGIS离线安装】2天的踩坑及问题解决经验分享(含安装文件postgresql-9.5.9+postgis-2.2.3+多个依赖及测试SQL)
- 正确率 精度 召回率 错误率
- OCR数据处理(上篇)+OCR数据处理(下篇)
- 这可能是最好的RxJava 2.x 入门教程学习系列
- iOS优化内存,提升性能 之五
- rtcp webrtc 接收_WebRTC RTP/RTCP 源码分析(四):RTCP 的接收和解析
- 如何将 MacBook 的外置屏幕设置为主屏幕
- 随手记_PPT设计风格参考
- 字符打印流(PrintWriter)
- [C/C++]如何在ARM环境下进行开发
- Wlan学习—无线网络安全
- JavaSE综合项目演练
- nodejs的http请求是报错 socket hang up
- RabbitMQ-1-概念及简单应用
- 新网站如何提交链接让百度更快速的收录
热门文章
- java sql变更跟踪_如何使用Spring动态跟踪数据库更改?
- linux查看通信延迟,低优先级进程延迟实时进程中的串行通信(Linux)
- php经典面试题时间,php 经典面试题及答案
- 疾风之刃的最新服务器,疾风之刃6月16日数据互通公告 数据互通服务器查询介绍...
- 与word2vec_Word2vec算法图解(一)
- python半年能达到什么程度_花半年的时间能把Python自学到什么程度?
- hdfs中与file数组类似的数组_Chapter05 Java中的数组
- 嵌入式工程师最后都选择了什么职位?
- 你眼中的嵌入式是什么样?
- 自己动手写CPU(5)简单算术操作指令实现_1