资讯专栏INFORMATION COLUMN

Android核心技术Intent和数据存储篇

mingzhong / 3396人阅读

摘要:数据的文件保存目录包名文件名。支持数据安全性高,空间大小有限与之相反。只能获取数据不能存储和修改,但能通过实现存储修改。在关系型数据库中,二维表中的列为属性,称为字段行为记录,如一对象属性中字段取值范围称为域。

  • 女孩:上海站到了?
  • 男孩:嗯呢?走向世界~

  • 女孩:Intent核心技术和数据存储技术?
  • 男孩:对,今日就讲这个~

Intent是各个组件之间用来进行通信的,Intent的翻译为“意图”的意思,是传输数据的核心对象,它可以开启一个activity,也可以发送广播消息和开启Service服务,对于他们之间就是通过intent来互相调用和协调工作的。

开启activity:

通过Intent对象传递startActivity()和startActivityForResult()与onActivityResult()方法开启activity。

开启Service:

startService()方法,开启一个Service。还有通过bindService()方法可以建立调用组件和服务之间的链接。

传递Broadcast:

广播的传递sendBroadcast(),sendOrderedBroadcast()或sendStickyBroadcast()方法。

Intent对象的属性

数据存储技术

在Android中与三种存储的方式:

SharedPreferences存储

File 文件存储

SQLite数据库存储

ContentProvider实现数据共享

1.SharedPreferences存储

SharedPregerences是一种轻量级的数据存储方式,一般用来存储一些简单数据,如应用程序的配置信息等。它的本质基于key-value键值对的方式存储,存储类型为int,long,String,float和boolean。

数据SharedPreferences的文件保存目录:/data/data/<包名>/shared_prefs/<文件名>。实现SharedPreferences存储的步骤:调用getSharedPreferences()方法,在获取该方法有两个参数:

getSharedPreferences(String name, int mode)

getPreferences(int mode)

个人资料界面模块以及SQLite数据库的使用 学习目标:

掌握SQLite数据库的使用,能够实现用数据库来保存用户的信息;
学会运用好个人资料,以及个人资料的修改功能实现;
个人资料包括用户名,昵称,性别,签名,QQ号或个人社交账号的记录等。

数据库的创建

数据类继承extends SQLiteOpenHelper

Android设置修改密码,设置密保,和找回密码:

学习目标

掌握修改密码功能的开发,和实现用户密码的修改;
掌握设置密保的功能开发,通过密保我们可以找回用户的密码,来保证用户的安全。
具体布局将不在展示,只说明一些功能模块的实现。

对于一个项目来说,项目中将多次用到sharedPreferences共享参数,去存储用户的登录状态或清除登录状态,“我”的界面也要求用到读取用户姓名的方法,所以我们干脆把这三个方法都扔到AnalysisUtils里面吧。

在Utils包中新建一个Java类,名为AnalysisUtils。

File文件存储

Java中提供了一套IO流体系,Android的写入和读取文件方式一样,提供FileOutputStream类的openFileOutput和提供FileInputStream类的openFileInput()方法。这位内部存储,那么外部存储是?外部存储它使用了Environment类的getExternalStorageDirectory()方法进行读写数据。

本地数据存储

这里介绍常用之Shared Preferences,主要以key-value形式存储。(支持boolean,int,float,long,string);Internal Storage数据安全性高,空间大小有限;External Storage与之Internal Storage相反。

SharedPreferences是一种比较轻型的数据存储,基于xml的键值对存储,存储一些简单的信息。

SharedPreferences只能获取数据不能存储和修改,但能通过Editor实现存储修改。

步骤:

获取SharedPreferences对象
SharedPreferences.Editor
Editor的putXXX的方法
Editor.commit()

SQLite数据库

SQLite是一种轻量级系型数据库,实质为二进制文件,所谓关系型,就是一种关系模式,这里表示二维表结构模式。

在关系型数据库中,二维表中的列为属性,称为字段;行为记录,如一对象;属性中(字段)取值范围称为域。

这里我们要学会数据库,如DDL,DML等,数据定义语言和数据操作语言,创建表格和增删改查。

在SQLite中我们要了解认识SQLiteOpenHelper和SQLiteDatabase,并学会用。和两种方法rawQuery():用于查询和execSQL():用于增删改查。

在Android提供了SQLiteDatabase创建对象,运用不用写数据库语法封装好的API类。分别用query(),insert(),delete(),update()表示。

到此就ok了,接下来会不断往高处学,让我们一起慢慢探索吧~

小礼物走一走 or 点赞
 

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/2885.html

相关文章

  • Android开发工程师文集-提示框,菜单,数据存储,组件

    摘要:提示框,菜单,数据存储,组件篇时间设置时间位置获取添加添加到中,复选单选消失通知栏,如接收短信属性手机状态栏的提示设置时间动态监听监听上下文菜单子菜单文件打开数据存储方式四种是一种比较轻型的数据存储,基于的键值对存储,存储一些简单的信息。提示框,菜单,数据存储,组件篇 Toast Toast.makeText(context, text, 时间).show(); setDuration(...

    techstay 评论0 收藏0
  • Android Studio教程02-应用程序结构图及应用基础

    摘要:二应用程序框架层该层是应用开发的基础,开发人员大部分情况是在和她打交道。的应用基础应用组件是应用的基本构建基块。通过将传递到来启动服务或对执行中的服务下达新指令。目录 1. Android应用程序开发技术结构图 2.Android的应用基础 2.1. Android的四大组件: 1. Android组...

    curlyCheng 评论0 收藏0
  • 一个老鸟发的公司内部整理的 Android 学习路线图

    摘要:一个老鸟发的公司内部整理的学习路线图年月日阅读数发了一篇一个老鸟也发了一份他给公司内部小伙伴整理的路线图。另一份开发学习路线图。看完这本书后,小明对的历史结构代码规范等都有了一个大概的了解,并且,小明已经可以写出一些简单的了。一个老鸟发的公司内部整理的 Android 学习路线图 2017年09月12日 17:13:27 阅读数:20449   jixiaohua发了一篇一个老...

    miya 评论0 收藏0
  • 我的Android重构之旅:插件化

    摘要:本文是我的重构之旅的第三篇,也是让我最为头疼的一篇,在本文中,我将会和大家聊一聊插件化的概念,以及我们在插件化框架上的选择与碰到的一些问题。 随着项目的不断成长,即便项目采用了 MVP 或是 MVVM 这类优秀的架构,也很难跟得上迭代的脚步,当 APP 端功能越来越庞大、繁琐,人员不断加入后,牵一发而动全局的事情时常发生,后续人员如同如履薄冰似的维护项目,为此我们必须考虑团队壮大后的开...

    104828720 评论0 收藏0
  • Android面试知识整理

    摘要:全面而详尽的面试题集面试系列总结全方面覆盖知识结构什么是如何避免指的是应用程序在一段时间内无响应,系统会向用户弹出一个应用无响应的对话框,用户可以选择关闭应用或者继续等待应用响应,这往往是由于程序的性能所引发的。 全面而详尽的Android面试题集Android面试系列2018总结(全方面覆盖Android知识结构) 1. 什么是ANR?如何避免? ANR(Application N...

    U2FsdGVkX1x 评论0 收藏0

发表评论

0条评论

mingzhong

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<