数据存储
典型的桌面OS的文件系统是公共文件系统——任何软件可以使用它来存储和读取文件,改文件也可以被其他应用程序所读取。
Android提供了不同的文件系统,所有应用程序数据为该应用程序私有。当然也可以通过统一的借口提供给其他应用程序访问。
10.1SharedPreferences
用于存储简单的配置信息,如欢迎语、用户名及密码,以键值对方式存储。
初始化对象:
SharedPreferences setting= getSharedPreferences(“SEETING_INFO”,0);
接受前端输入并保存:
Setting.edit().putString(“name”,X.getText().toString());
获取保存的值
Setting.getString(“name”,””);
界面生成时一般执行onCreate(),退出时一般执行onStop();
SharedPreferences一般以XML形式保存。SEETING_INFO.xml
10.2类似Java I/O形式的接口:openFileInput和OpenFileOutput
示例:
FileOutputStream fos = openFileOutput(“文件名”,Context.MODE_PRIVATE—写入模式);
FileInputStream fis = openFileInput(“文件名”,);
FileOutputStream创建的文件其他应用程序无法读取。如需共享,则需要使用ContentProvider。
如果应用程序需要额外的资源文件,可将其放在res/raw目录下,使用getResources获取资源。
Resource res = getResources();
InputStream is = res.openRawResource(R.raw.fileId);
10.3SQlite
Android使用SQLite作为数据库。支持SQL语句,轻量级嵌入式数据库。
一个SQLiteDatabase示例代表一个SQLite数据表,数据库在Android中的私有的,名字也是唯一的。
SQLiteOpenHelper用于生成数据库,并对数据库版本管理。调用getWritableDatabase()或getReadableDatabase()时,如无数据库,则生成一个。
是抽象类,需要继承并实现3个方法:onCreate()
onCreate():数据库第一次生成时使用,在该方法中生成数据库表。
onUpdate():数据库升级时,系统主动调用该方法。一般在该方法中删旧表,建新表。
OnOpen():打开数据库时的回调函数,一般不会用到。
Android日志打印级别:Verbose、Debug、Info、Warning、Error。
Cursor是随机读写数据库查询结果的借口
ContentValues以键值对存储数据,键位Sring类型,值为基础类型。
SimpleCursorAdapter负责将Cursor中的数据放到ListView中。同理ArrayAdapter
10.4ContentProvider
一个应用程序可以通过ContentProvider的接口将自己的数据暴露出去,外界通过其他接口读写数据。
常用的接口是query(),insert(),update(),delete()
外界通过ContentResolver访问ContentProvider中的数据。在Android中,通过getContentResolver()获取现有应用中的ContentResolver实例。
ContentResolver和ContentProvider通过URL读写数据。URL可以是指定全部数据,可以是某个ID的数据。
URL由三部分组成:
Content://+要获取数据的字符串片段+ID
startManagingCursor(Corsor):系统管理生成的Corsor
ListView中的id 必须声明为@+id/Android:才能被ListView引用。
在Android数据库中,每个表都有一个_id字段。
10.5网路存储
WebService
若需访问外部网络,需要在AndroidManinfest.xml中加入代码申请许可权限:
<use-permission Android:name=”Android.permission.INTERNET”
以HttpPost访问:request=new HttpPost(url网址)
Request.setEntry();
Try{
HttpResponse response=new DefaultHttpClient().execute(request);
If(response.getStatueLine().getStatueCode()!=404)
String result=EntityUtil.toString(response.getEntity());
}catch(Exception e){
}
相关推荐
【第一部分】历史文章: Android学习笔记(一)——创建第一个Android项目 Android学习笔记(二)android studio基本控件及布局(实现图片查看器) ...Android学习笔记(七)——数据存储(共享参数Share
Android开发学习笔记(整理),整理论坛android学习笔记,较完整的讲解了android的内容。包括:view、activity、service、intent、广播机制、http连接、数据sqllite存储、后台线程、各种layout、偏好、本地文件操作、...
在“android学习笔记之二”中,我们主要探讨的是如何在Android平台上实现一个用户登录的模拟工程。这个项目,名为“UserLoginTestProject”,旨在帮助开发者理解和实践Android应用中的用户认证流程。通过这个实例,...
Android学习笔记全全整理,是针对想要深入理解并掌握Android开发技术的学习者们的一份宝贵资源。这份笔记涵盖了从基础到高级的多个方面,旨在帮助读者建立起完整的Android知识体系。以下将详细介绍其中可能包含的...
根据给定的信息,我们可以从Java和Android学习笔记中提取出一系列重要的知识点,下面将逐一进行详细解释。 ### Java基础知识 #### 1. 命令行基础操作 - **`javacmd`**: 这个命令是Java命令行工具的一部分,用于...
《黑马程序员Android学习笔记》是一份专为初学者设计的详尽教程,旨在帮助那些希望踏入安卓开发领域的人员快速掌握核心知识。这份笔记涵盖了从基础到进阶的多个主题,帮助学习者系统地理解Android应用开发的过程。 ...
《Android学习笔记》 在移动应用开发领域,Android操作系统占据着重要的地位,为开发者提供了丰富的API和工具,使得创建各种应用程序变得可能。本压缩包文件包含了一位学习者从第一天到第五天,以及一个特定项目...
Android Activity学习笔记 Android Activity是Android系统中最基本的组件之一,它负责处理用户交互和显示用户界面。本文将深入讲解Activity的生命周期、Activity之间的数据交互、Activity启动模式、Task和BackStack...
这篇Android学习笔记主要涵盖了从第五章到第十三章的内容,是Android开发者或对Android系统感兴趣的初学者的重要参考资料。笔记详细解读了Android应用开发的核心概念和技术,旨在帮助读者深入理解并掌握Android开发...
在Android学习过程中,掌握核心概念和技术是至关重要的。这篇学习笔记涵盖了Android开发的基本知识点,旨在帮助初学者系统地理解和深入探索这个平台。 1. **Android系统架构**:Android由Linux内核、硬件抽象层...
目录,整理论坛android学习笔记,较完整的讲解了android的内容。包括:view、activity、service、intent、广播机制、http连接、数据sqllite存储、后台线程、各种layout、偏好、本地文件操作、apdapter等几乎全部内容...
本篇学习笔记将深入探讨Bundle的使用方法和源码分析,帮助开发者更好地理解和运用这一核心概念。 首先,我们要理解Bundle的基本用法。Bundle是一个键值对的集合,类似于Java中的HashMap。你可以通过键(key)来存储...
【Mono for Android学习笔记全套】是一份详尽的资源,旨在帮助开发者掌握使用Mono和C#进行Android应用开发的技术。Mono是.NET框架的一个开源实现,它使得C#开发者能够在多种平台上,包括Android,编写和运行应用程序...
【Android学习笔记详解】 在移动应用开发领域,Android操作系统占据着重要的地位,为开发者提供了丰富的平台和无限的可能性。"Android很好的学习笔记"是一份专为初学者设计的资源,旨在帮助那些想要踏入Android开发...
【Android学习笔记】 Android是一种基于Linux内核的开源操作系统,主要应用于移动设备,如智能手机和平板电脑。这个“很好的android学习笔记”包含了作者在学习Android开发过程中积累的宝贵经验,旨在帮助初学者或...