Android基础知识(三)

Andriod四大组件

  • 1 Activity
  • 2 Service
  • 3 ContentProvide
  • 4 BroadcastReceiver

Android广播的机制

BroadcastReceiver是Android系统的四大组件之一,其本质上是一种全局的监听器,用于监听系统全局的广播信息。

广播的作用

  • 1
  • 2
  • 3

广播的应用场景

  • 1
  • 2
    典型的应用就是Android自带的短信、电话等广播
  • 3
  • 4
  • 5

广播的实现

  • 1广播的创建与发送
  • 2广播接收器的创建和注册
    在XML中静态注册和在程序中动态注册

类型

  • 1 普通
  • 2 系统
  • 3 有序
  • 4 APP应用内广播

Service的基本概念

启动service的两种方法:

启动的
绑定的

  • 1 void onCreate():
  • 2 void onStartCommand(Intent intent,int flags,int startId):
  • 3 voidonDestroy():
  • 4 abstract Ibinder onBind(Intent intent)
  • 5 boolean onUnbind (Intent intent)

使用Service的方法

  • 1 创建服务,需要继承Service或者IntentService,重写服务的几个重要方法
  • 2 清单中注册
<service android:name=".FirstService">
<intent-filter>
<action android:name="org.crazyit.service.FIRST_SERVICE">
</intent-filter>
</service>
  • 3 在一个Android组件中操作这个Service组件
    • 1 启动
    • 2停止
    • 3 绑定

访问系统核心服务

通过Activity类中的getSystemService方法可以获得指定的对象(系统服务)
audio 音频服务
widow 窗口服务
notification 通知服务
SmsManager 短信服务

  • 1获取SmsManager
  • 2创建一个PendingIntent对象
  • 3发送短信

数据存储即及共享

本地数据存储

  • 1 SharedPreferrnces

简介

一种轻量型的Android数据存储方案
简单数据类型,以key-value键值对
只能获取数据,修改通过Editor接口实现

获取方式

调用Context对象
调用Activity对象

区别

Context:可以被同一个应用程序下的其他组件共享
Activity:不可以被同一个应用程序下的其他组件共享

访问模式

  • 1 Context.MORE_PRIVATE:写入的内容会覆盖原文件的内容
  • 2 Context.MORE_APPEND:存在就往文件追加内容
  • 3 Context.MORE_WORLD_READABLE:文件可读
  • 4 Context.MORE_WORLD_WRITEABLE:文件可写

注意点

  • 1
  • 2
  • 3
  • 2Iternal Storage

文件存储

从内部存储中创建并写入一个私有文件的步骤如下

  • 1调用openFileOutput(),返回一个FileOutputStream对象
  • 2使用write()方法将数据写入文件
  • 3使用close方法关闭文件流

从内部存储中读取一个文件的步骤如下

  • 1
  • 2
  • 3
  • 3External Storage
  • 4SQLite Database
    SQLite是2000年由D.Richard Hipp发布的开源的嵌入式数据库引擎,实现了自包容、无服务器、零配置、事务性的SQL数据库引擎。
    支持的数据类型 null,integer,real,text,blob

ContentProvider数据共享

Uri类

URI指通用资源标志符
content://com.example.personprovider/person/2
A:标准前缀
B:URI的表示
C:路径
D:如果URI中包含ID,则表示需要根据ID获取相应的记录;如果没有ID,则表示返回全部

ContentResolver类

App的高级控件的应用

TabLayout使用方法

build.gradle输入相应的版本号
addTab()有几个添加几个

CradView

Toolbar

使用方法:
去掉actionbar,引入toolbar,找到toolbar,判断存在否

DrawerLayout

不做修改,默认灰色,需设置透明色

Snackbar

FloatingActionButton

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 174,069评论 25 709
  • 用两张图告诉你,为什么你的 App 会卡顿? - Android - 掘金 Cover 有什么料? 从这篇文章中你...
    hw1212阅读 13,085评论 2 59
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,131评论 19 139
  • 人的一生由无数次第一次组成,各种各样的人生体验,将我们变成了今天的样子。 从来没有想过,有一天我会以助教的身份站在...
    伊诺0阅读 500评论 0 0
  • 青春是用来浪费用来做梦用来努力的 你应该用这样的时光做你想做的事情 哪怕这很难 哪怕会失败 因为不管怎么样 我都不...
    a37f64c128a7阅读 244评论 0 0