zoukankan      html  css  js  c++  java
  • Android核心技术Intent和数据存储篇

    标题图

    • 女孩:上海站到了?

    • 男孩:嗯呢?走向世界~

    • 女孩: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 点赞
     image

  • 相关阅读:
    给出一个单向链表的头指针,输出该链表中倒数第K个节点的指针
    把二元查找树转变成排序的双向链表
    动态规划0/1背包问题
    判断一字符串是不是对称的
    动态链接库dll,静态链接库lib, 导入库lib(转载)
    基于格点数据分析和表达
    Silverlight Wcf 获取集合数据并绑定(DataContract,DataMember)
    让你学会使用WCF服务端配置
    数据契约(DataContract)
    symbol详解
  • 原文地址:https://www.cnblogs.com/dashucoding/p/9384002.html
Copyright © 2011-2022 走看看