小猪的Android入门之路 Day 7 part 1
2016-01-07 00:02
429 查看
Android的数据存储与访问之——文件
----转载请注明出处:coder-pig
本节引言:
在开始新的一天之前,先整合下前面6天我们所学的
Day 1: android的背景知识,平台架构与相关特性,还有开发环境的搭建
Day 2: 四大组件的初步了解,app的生命周期,app工程目录的理解,开发简单的电话拨号器,
六大布局,三种提示方式;九妹9patch工作制作局部缩放的素材
Day 3:Android常用的一些基本的UI组件
Day 4:android的事件处理机制:基于监听与回调的事件监听,Handler信息传递机制;android触摸事件
Configuration响应系统设置的事件,AyyncTask异步任务实现更简单的UI线程操作
Day 5:android基本程序单元——Activity的相关概念,生命周期,多个Activity的数据交流,四种不同的加载模式
Activity片段——Fragment(碎片)的概念,生命周期,静态与动态加载Fragment,Fragment与Activity的
交互,Fragment管理与事务
Day 6:Android应用的核心——Intent(意图)的概念,显式Intent与隐式Intent,Intent的七个属性,系统预定义与
自定义的隐式Intent
如果前面六天学的你都会了,就可以部署一些比较简单的App了,你可以做出一个自定义的UI界面,实现一些点击
页面跳转!好了,假如现在要我们做一个简单的记事本,相信大家都噼里啪啦地做出自己的界面来了,但是真正写
东西进去,那些信息保存去哪里?我们貌似只学过往Intent里putExtras()写入Bundle类型的数据,但是如果
我们下次重新开软件呢?之前写的东西都不见了!所以我们需要一些持久化保存我们数据的一些方式,
比如我们将数据保存到文件中,又或者数据库中等等!相信看到这里你已经有点
欲欲想试了吧,好了,开始学习android数据存储与访问的一天吧!
本节学习路线图:
![](https://img-blog.csdn.net/20140816123605875?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY29kZXJfcGln/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
正文:
![](https://img-blog.csdn.net/20140926092003937?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY29kZXJfcGln/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
![](https://img-blog.csdn.net/20140816000728597?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY29kZXJfcGln/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
代码示例:
效果图:
![](https://img-blog.csdn.net/20140816001116700)
运行后,查看File Exploer可以看到,data/data/<包名>/file已经存在对应的文件了:
![](https://img-blog.csdn.net/20140816001151640?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY29kZXJfcGln/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
另外,点击右上角的对应图标可以导出文件到电脑中:
![](https://img-blog.csdn.net/20140816001435656?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY29kZXJfcGln/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
参考代码下载:点击下载
![](https://img-blog.csdn.net/20140816120408590?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY29kZXJfcGln/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
代码示例:
效果图:
![](https://img-blog.csdn.net/20140816120406453)
运行后来到sd卡的目录下,可以看到:
说明文件生成成功!
![](https://img-blog.csdn.net/20140816123918291?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY29kZXJfcGln/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
参考代码下载:代码下载
Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)可能一直返回的是false
,就是SD卡不存在,这个是主要的问题,现在新版本的SDK都会在创建AVD的
同时申请一块SD卡的存储区域的
![](https://img-blog.csdn.net/20140816121019406?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY29kZXJfcGln/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
对于旧版本的sdk或者其他原因可能需要手动关联下sd卡,设置如下:
①找到创建好的avd的镜像的路径:
点击
![](https://img-blog.csdn.net/20140816121443761?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY29kZXJfcGln/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
打开avd界面,点击detail,查看avd镜像的目录下
![](https://img-blog.csdn.net/20140816121623882?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY29kZXJfcGln/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
②来到avd镜像所在的路径下,复制sdcard.img的路径:
比如我的:-sdcard C:\Users\Administrator\.android\avd\Jay4.2.avd\sdcard.img
③接着点击
![](https://img-blog.csdn.net/20140816122005231?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY29kZXJfcGln/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
来到以下界面:
![](https://img-blog.csdn.net/20140816122610037?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY29kZXJfcGln/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
最后apply以下,然后Run就可以了!
----转载请注明出处:coder-pig
本节引言:
在开始新的一天之前,先整合下前面6天我们所学的
Day 1: android的背景知识,平台架构与相关特性,还有开发环境的搭建
Day 2: 四大组件的初步了解,app的生命周期,app工程目录的理解,开发简单的电话拨号器,
六大布局,三种提示方式;九妹9patch工作制作局部缩放的素材
Day 3:Android常用的一些基本的UI组件
Day 4:android的事件处理机制:基于监听与回调的事件监听,Handler信息传递机制;android触摸事件
Configuration响应系统设置的事件,AyyncTask异步任务实现更简单的UI线程操作
Day 5:android基本程序单元——Activity的相关概念,生命周期,多个Activity的数据交流,四种不同的加载模式
Activity片段——Fragment(碎片)的概念,生命周期,静态与动态加载Fragment,Fragment与Activity的
交互,Fragment管理与事务
Day 6:Android应用的核心——Intent(意图)的概念,显式Intent与隐式Intent,Intent的七个属性,系统预定义与
自定义的隐式Intent
如果前面六天学的你都会了,就可以部署一些比较简单的App了,你可以做出一个自定义的UI界面,实现一些点击
页面跳转!好了,假如现在要我们做一个简单的记事本,相信大家都噼里啪啦地做出自己的界面来了,但是真正写
东西进去,那些信息保存去哪里?我们貌似只学过往Intent里putExtras()写入Bundle类型的数据,但是如果
我们下次重新开软件呢?之前写的东西都不见了!所以我们需要一些持久化保存我们数据的一些方式,
比如我们将数据保存到文件中,又或者数据库中等等!相信看到这里你已经有点
欲欲想试了吧,好了,开始学习android数据存储与访问的一天吧!
本节学习路线图:
正文:
Android的文件操作简介:
Android的文件读写:
代码示例:
效果图:
运行后,查看File Exploer可以看到,data/data/<包名>/file已经存在对应的文件了:
另外,点击右上角的对应图标可以导出文件到电脑中:
参考代码下载:点击下载
读写SD卡上的文件:
代码示例:
效果图:
运行后来到sd卡的目录下,可以看到:
说明文件生成成功!
参考代码下载:代码下载
SD卡的一些问题:
如果是真机调试的话通常都是可以的,对于虚拟机的话就问题多多了,再我们前面使用Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)可能一直返回的是false
,就是SD卡不存在,这个是主要的问题,现在新版本的SDK都会在创建AVD的
同时申请一块SD卡的存储区域的
对于旧版本的sdk或者其他原因可能需要手动关联下sd卡,设置如下:
①找到创建好的avd的镜像的路径:
点击
打开avd界面,点击detail,查看avd镜像的目录下
②来到avd镜像所在的路径下,复制sdcard.img的路径:
比如我的:-sdcard C:\Users\Administrator\.android\avd\Jay4.2.avd\sdcard.img
③接着点击
来到以下界面:
最后apply以下,然后Run就可以了!
相关文章推荐
- 小猪的Android入门之路 Day 5 - part 2
- 小猪的Android入门之路 Day 6
- Android实训案例(一)——计算器的运算逻辑
- android studio 代理设置
- Android实现气泡漂浮动画,类似IOS Game Center中气泡动画
- Android实训案例(一)——计算器的运算逻辑
- android动画浅析
- Android屏幕自动变换,layout-land文件修改报错
- 小猪的Android入门之路 Day 5 - part 1
- 小猪的Android入门之路 Day 4 - part 4
- 小猪的Android入门之路 Day 4 - part 3
- 小猪的Android入门之路 Day 4 - part 2
- 小猪的Android入门之路 Day 4 - part 1
- Android Studio安装与使用
- 小猪的Android入门之路 Day 3 - part 3
- [原创] 浅谈开源项目Android-Universal-Image-Loader(Part 3.1)
- Android Auto Scroll ViewPager (Smooth)
- android实现下载图片在(Notification)通知栏上显示进度。
- 【Android】How Android Draws Views
- Android自助餐之Jni(一)最简单的运行