一、概述

一般Android应用程序包括以下四个部分:

1.Activity

2.Broadcast Intent Receiver

3.Service

4.Content Provider

二、主要内容

1.Activity介绍:

Activity一般代表手机屏幕的一屏,相当于浏览器的一个页面。当打开一个屏幕时,之前的那一个屏幕会被置为暂停状态,并且压入历史堆栈中,用户可以通过回退操作返回到以前打开过的屏幕。开发时需要选择性的移除没有必要保留的屏幕,因为打开后的屏幕会保存在堆栈中

Android的生命周期:即“产生、运行、销毁”

Intent(意图)和Intent Filter介绍:

一个Intent就是一次对将要执行的操作的抽象描述,通过Intent可以在多个Activity之间进行跳转,Intent两个最重要的部分是动作(action)和动作对应的数据(data),典型的动作类型(catagory)有,MAIN、view、pick、edit等,而动作对应的数据则以URI的形式表示;例如有两个activity分别为A和B,要从A跳转到B可以这样写:

Intent intent = new Intent(A.this, B.class);

startActivity(intent);

与Intent有关联的有个类叫做Intent Filters,如果Intent是一个请求,一个Intent Filters描述改组件所能相应Activity请求的能力。

2.Broadcast Intent Receiver介绍:

可以使用BroadcastReceiver来让应用对外一个外部的事件作出响应。BroadcastReceiver通过NotificationManager来通知用户这些事情发生了,BroadcastReceiver注册的有两种方式:一种是可以在AndroidManifest.xml中注册,另一种可以在运行时的代码中使用Context.registerReceiver()进行注册。用户还可以通过Context.sendBroadcast()将他们自己的intent broadcasts广播给其他的应用程序。

3.Service介绍:

Service是一种程序,它可以运行很长的时间,相当于后台的一个服务,通过startService(Intent service)可以启动一个Service,通过Context.bindService()可以绑定一个Service。

4.Content Provider介绍:

数据在android当中是私有的,这些数据包括文件数据和数据库数据以及其他类型的一些数据。两个程序之间数据的交互是通过Content Provider来实现,一个Content Provider实现了一组标准的接口,能够让其他应用保存或读取此Content Provider的各种数据类型。所以一个程序可以通过实现以个Content Provider的抽象接口将自己的数据暴露在外面,实现常见的接口有:

Query(URI,String[],String,String[],String):通过关键字查询;

Insert(Uri,ContentValues):将一组数据插入到指定的地方 ;

Update(Uri,ContentValues,String,String[]):更新数据;

Delete(Uri, String, Stringp[]) :删除数据;

Android应用程序介绍相关推荐

  1. Android应用程序组件Content Provider简要介绍和学习计划

    在Android系统中,Content Provider作为应用程序四大组件之一,它起到在应用程序之间共享数据的作用,同时,它还是标准的数据访问接口.前面的一系列文章已经分析过Android应用程序的 ...

  2. Android应用程序开发——安卓应用开发介绍

    这是网易公开课 密西西比河谷州立大学:Android应用程序开发 的笔记. 视频地址:http://v.163.com/special/opencourse/developingandroidappl ...

  3. Android应用程序消息处理机制(Looper、Handler)分析(2)

    我们再回到NativeMessageQueue的构造函数中,看看JNI层的Looper对象的创建过程,即看看它的构造函数是如何实现的,这个Looper类实现在frameworks/base/libs/ ...

  4. 电子界卡组构建2019_2018–2019年构建现代Android应用程序的路线图

    电子界卡组构建2019 Kriptofolio应用程序系列-简介 (Kriptofolio app series - Introduction) Welcome to this series of b ...

  5. 在 Android 应用程序中使用 SQLite 数据库以及怎么用

    part one : android SQLite 简单介绍 SQLite 介绍 SQLite 一个非常流行的嵌入式数据库.它支持 SQL 语言,而且仅仅利用非常少的内存就有非常好的性能.此外它还是开 ...

  6. Android 应用程序窗体显示状态操作(requestWindowFeature()的应用)

    转自:http://www.cnblogs.com/salam/archive/2010/11/30/1892143.html 我们在开发程序是经常会需要软件全屏显示.自定义标题(使用按钮等控件)和其 ...

  7. Android Fragment 基本介绍

    Android Fragment 基本介绍 Android Fragment 基本介绍 Fragment Android是在Android 3.0 (API level 11)开始引入Fragment ...

  8. Android应用程序组件Content Provider的启动过程源代码分析(6)

        Step 17. ActivityThread.installProvider         这个函数定义在frameworks/base/core/java/android/app/Act ...

  9. Android应用程序获得root权限

    我在博文<Android程序的安全系统>中提到两种让root权限的办法.最近在网上发现很多朋友转载那篇文章,但是对那篇文章中提到的第一种方法怎样实现,不是很明白.本文将会以一个例子实现来演 ...

最新文章

  1. 如何关闭Visual Assist?
  2. BZOJ 3597 SCOI2014 方伯伯送椰子 网络流分析+SPFA
  3. Python 调用Java
  4. 手风琴特效这么飒,能用 JavaScript 实现吗?
  5. 一篇文学会商用可编辑问卷表单制作【iVX 十二】
  6. C++ 学习之旅(12)——static用法小结
  7. 前端学习(1920)vue之电商管理系统电商系统之角色列表路由的切换
  8. 太原市中考计算机考试系统,太原中考报名系统
  9. #ifndef #define #endif 和#pragma once的区别
  10. UI初学者必备知识|最好的Sketch App 素材资源都在一流设计导航
  11. OpenShift 4 - DevSecOps Workshop (11) - 通过Trigger启动Pipeline运行
  12. Ubuntu18.04 下联想电脑 无法连接WIFI问题解决
  13. Windows XP SP3细节官方详解
  14. ❤️程序员国企太安逸想辞职,又嫌私企大厂压力大996我该如何选择?(高级全栈自动化之路)
  15. 软件开发设计文档模版
  16. Unity 不使用BMFont创建Font字体
  17. 米思齐Mixly图形化编程---RFID智能门禁
  18. groupdel: cannot remove the primary group of user 'lxh1'的解决办法
  19. 51单片机和LCD1602实现简单的密码锁
  20. 一文带你了解什么是云计算网络运维工程师,以及2023年的就业前景

热门文章

  1. 七年级上计算机教学记录,七年级信息技术上册教学反思
  2. Python读取dta数据(自己学习专用)
  3. UIApp教程(全网最详细的教程来啦)
  4. OCR技术在爱奇艺的应用实践及演进
  5. 苹果ios15系统兼容哪些机型
  6. 酷安9.5高分神器,好东西藏不住!封杀所有APP的启动页开屏广告!
  7. 国产操作系统-中标麒麟
  8. 最好用的.NET敏捷开发框架-RDIFramework.NET V3.6版全新发布 100%源码授权
  9. 如何黑掉一个宇宙?一文带你详解Meterpreter后渗透模块攻击(文末赠送免费资源哦~)
  10. Pandas数据分析详细教程