存储方式:SharedPreferences、sqlite、文件存储、网络存储 SharedPreferences: 通过NVP(键值对)方式存储在android文件系统中,可以在不同的应用程序之间进行数据共享 支持的模式:私有MODE_PRIVATE/全局读MODE_WORLD_READABLE/全局写MODE_WORLD_WRITEABLE 声明读写:MODE_WORLD_READABLE + MODE_WORLD_WRITEABLE 通过名字来区分位置[若NVP中的name相同,保存到相同的文件中] *声明对象方法getSharedPreferences(String sharedName, int mode) SharedPreferences.Editor 类完成数据的修改; 通过SharedPreferences的edit()方法来获取Editor对象,在修改结束后使用方法commit()方法保存修改; 通过Editor对象的put方法进行数据添加存储,SharedPreferences支持基本数据类型; 通过SharedPreferences对象的get方法来获取数据; 需要提供给另个一app使用,在获取SharedPreferences之前,需要获取提供数据的app的Context,使用Activity 的createPackageContext(String appName, int security)方法创建包环境Context,参数appName为包名, SharedPreferences在获取数据时,通过包名识别文件; *getString("name", "default name")读取数据 默认保存的为xml文件 *文件保存在/data/data/<package name>/shared_prefs目录下 文件存储: 默认存放于/data/data/<package name>/files目录当中; openFileOutput(String fileName, int mode)打开文件输出流,若文件不存在,则创建一个文件; openFileInput(String fileName) 可以使用java api来对文件进行操作; 文件操作模式:MODE_PARIVATE/MODE_APPEND/MODE_WORLD_READABLE/MODE_WORLD_WRITEABLE sd卡存储: 在运行时配置中的target选项卡,中配置sdcard路径【-sdcard 路径】 IO操作:使用[绝对目录+文件名]进行操作 命令行方法:adb push[pull] mnt/sdcard 分隔符‘/’ 在sdcard中进行文件操作的时候路径使用 "sdcard/" 操作sdcard中的文件需要在manifest文件中进行权限设置 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 设置完成权限后,使用java api进行操作; 资源文件: res/raw 目录下存放音频、视频、图片等资源 res/xml 在打包时编译成二进制文件 读取res/raw目录下的资源: 读取getResource()方法获取资源对象,再调用openRawResuource()方法,以二进制流的形式打开指定的原始格式文件; 读取res/xml目录下的xml文件: 调用getXml()方法,获取xml解析器,XmlPullParser读取xml文件 写入xml文件使用XmlSerializer写xml文件 sqlite: 输入sqlite3可以启动sqlite3工具,并获得工具的版本信息; 输入adb shell可以进入shell命令; 保存在/data/data/<package name>/databases目录下 .tables命令显示当前数据库中的所有表 .schema 表名 命令查看表情况 mode 命令支持常见到恶column格式 .database 命令显示数据库名称和文件位置 SQLiteDatabase用以建立、删除数据库,执行sql命令,对数据进行管理等工作; SQLiteOpenHelper可以辅助建立、更新、打开数据库; SQLiteOpenHelper的getWritableDatabase()和getReadableDatabase()方法获取数据库类SQLiteDatabase; 记事本程序: