`

Android学习笔记之9数据存储

阅读更多

数据存储

典型的桌面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形式的接口:openFileInputOpenFileOutput

示例:

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日志打印级别:VerboseDebugInfoWarningError

 

Cursor是随机读写数据库查询结果的借口

ContentValues以键值对存储数据,键位Sring类型,值为基础类型。

 

SimpleCursorAdapter负责将Cursor中的数据放到ListView中。同理ArrayAdapter

10.4ContentProvider

一个应用程序可以通过ContentProvider的接口将自己的数据暴露出去,外界通过其他接口读写数据。

常用的接口是query(),insert(),update(),delete()

 

外界通过ContentResolver访问ContentProvider中的数据。在Android中,通过getContentResolver()获取现有应用中的ContentResolver实例。

 

ContentResolverContentProvider通过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学习笔记(二)android studio基本控件及布局(实现图片查看器) ...Android学习笔记(七)——数据存储(共享参数Share

    Android学习笔记

    ### Android学习笔记 #### 1. Android概述 **1.1 Android的特性** - **应用框架**:Android提供了一个强大的应用框架,使得开发者能够轻松地重用基础组件和服务,简化了应用程序的开发流程。 - **Dalvik虚拟机**...

    Android开发学习笔记(整理)

    Android开发学习笔记(整理),整理论坛android学习笔记,较完整的讲解了android的内容。包括:view、activity、service、intent、广播机制、http连接、数据sqllite存储、后台线程、各种layout、偏好、本地文件操作、...

    Android学习笔记.doc Android学习笔记.doc

    【Android学习笔记】 Android平台是谷歌推出的一个开放源代码的移动设备操作系统,它为开发者提供了一个全面的软件包,包括操作系统、中间件和关键应用程序。这个平台的主要目标是促进移动应用的创新和多样性,允许...

    android学习笔记之二

    在“android学习笔记之二”中,我们主要探讨的是如何在Android平台上实现一个用户登录的模拟工程。这个项目,名为“UserLoginTestProject”,旨在帮助开发者理解和实践Android应用中的用户认证流程。通过这个实例,...

    android 学习笔记(全全整理)

    Android学习笔记全全整理,是针对想要深入理解并掌握Android开发技术的学习者们的一份宝贵资源。这份笔记涵盖了从基础到高级的多个方面,旨在帮助读者建立起完整的Android知识体系。以下将详细介绍其中可能包含的...

    java学习细节 android学习笔记

    根据给定的信息,我们可以从Java和Android学习笔记中提取出一系列重要的知识点,下面将逐一进行详细解释。 ### Java基础知识 #### 1. 命令行基础操作 - **`javacmd`**: 这个命令是Java命令行工具的一部分,用于...

    黑马程序员Android学习笔记

    《黑马程序员Android学习笔记》是一份专为初学者设计的详尽教程,旨在帮助那些希望踏入安卓开发领域的人员快速掌握核心知识。这份笔记涵盖了从基础到进阶的多个主题,帮助学习者系统地理解Android应用开发的过程。 ...

    android学习笔记.zip

    《Android学习笔记》 在移动应用开发领域,Android操作系统占据着重要的地位,为开发者提供了丰富的API和工具,使得创建各种应用程序变得可能。本压缩包文件包含了一位学习者从第一天到第五天,以及一个特定项目...

    Android Activity学习笔记

    Android Activity学习笔记 Android Activity是Android系统中最基本的组件之一,它负责处理用户交互和显示用户界面。本文将深入讲解Activity的生命周期、Activity之间的数据交互、Activity启动模式、Task和BackStack...

    Android学习笔记(5-13)

    这篇Android学习笔记主要涵盖了从第五章到第十三章的内容,是Android开发者或对Android系统感兴趣的初学者的重要参考资料。笔记详细解读了Android应用开发的核心概念和技术,旨在帮助读者深入理解并掌握Android开发...

    android 学习笔记doc

    在Android学习过程中,掌握核心概念和技术是至关重要的。这篇学习笔记涵盖了Android开发的基本知识点,旨在帮助初学者系统地理解和深入探索这个平台。 1. **Android系统架构**:Android由Linux内核、硬件抽象层...

    android学习笔记(html完整版)目录

    目录,整理论坛android学习笔记,较完整的讲解了android的内容。包括:view、activity、service、intent、广播机制、http连接、数据sqllite存储、后台线程、各种layout、偏好、本地文件操作、apdapter等几乎全部内容...

    Android学习笔记之bundle用法源码

    本篇学习笔记将深入探讨Bundle的使用方法和源码分析,帮助开发者更好地理解和运用这一核心概念。 首先,我们要理解Bundle的基本用法。Bundle是一个键值对的集合,类似于Java中的HashMap。你可以通过键(key)来存储...

    MONO FOR ANDROID学习笔记全套

    【Mono for Android学习笔记全套】是一份详尽的资源,旨在帮助开发者掌握使用Mono和C#进行Android应用开发的技术。Mono是.NET框架的一个开源实现,它使得C#开发者能够在多种平台上,包括Android,编写和运行应用程序...

    android 很好的学习笔记

    【Android学习笔记详解】 在移动应用开发领域,Android操作系统占据着重要的地位,为开发者提供了丰富的平台和无限的可能性。"Android很好的学习笔记"是一份专为初学者设计的资源,旨在帮助那些想要踏入Android开发...

    android\Android学习笔记

    ### Android学习笔记精要 #### 一、Android平台概述与特性 Android平台是谷歌推出的针对移动设备的操作系统,集成了操作系统、中间件和关键应用程序,为开发者提供了完整的开发环境。其核心特性包括: 1. **应用...

    很好的android学习笔记

    【Android学习笔记】 Android是一种基于Linux内核的开源操作系统,主要应用于移动设备,如智能手机和平板电脑。这个“很好的android学习笔记”包含了作者在学习Android开发过程中积累的宝贵经验,旨在帮助初学者或...

Global site tag (gtag.js) - Google Analytics