移动开发课程需要答辩,所以简单总结一些常识用来复习。

一、四大组件

首先,我们需要知道安卓移动开发的四大组件是什么?

activity:一个Activity就是一个单独的屏幕(窗口),Activity直接通过Intent对象进行通信。另外注意,安卓的每一个Activity都必须在项目的AndroidManifest.xml配置文件中声明,否则系统将无法识别。如下:

service: service一般用于在后台完成用户指定的操作。Service分为两种,一种是started(启动),一种是bound(绑定);这么说可能不好懂,但是你只需要知道他们的区别就是前者的生命周期与调用它的组件无关,可以在后台无限制运行;而后者一旦被调用,它的生命周期即和调用它的组件绑定在一起了,调用者一旦退出,服务也会终止。
这里也要在AndroidManifest.xml配置文件中声明,例如:(这里调用了一个地图的服务)

content provider:当我们需要在多个应用之间共享内容时,即需要Content provider实现数据共享。比如说通讯录的数据被多个应用程序使用,他们不是重新开辟空间将其复制,而是都存储在一个内容提供者中,它的好处就是统一数据访问方式,实现数据共享。其他应用可以通过ContentResolver类从该内容提供者中获取或存入数据。

broadcast receiver:广播接收者,这个组件是用来干嘛的呢?有点类似于一个接收器吧,主要用来对外部事件进行过滤。比如你的扣扣,别人给你发消息了,就会发出滴滴的提示音,支队感兴趣的外部实践进行接收并作出反应,进而通知用户。广播接收者的注册方法主要有两种,分别为程序动态注册和在应用程序配置文件中惊天注册。动态注册广播接收器特点是当用来注册的Activity关掉后,广播也就失效了。静态注册无需担忧广播接收器是否被关闭,只要设备是开启状态,广播接收器也是打开着的。也就是说哪怕app本身未启动,该app订阅的广播在触发时也会对它起作用。

二、五大存储

1)SharedPreference方式

2)文件存储方式:
提供了openFileInput和openFileOutput方法读取设备上的文件。

//确定要操作的文件名
String File_name = "tempfile(temp.tmp)";
//初始化
FileOutputStram fos = openFileOutput(File_name,Context.MODE_PRIVATE);
//创建写入流
FileInputStream fis = openFileInput(File_name);

3)SQLite数据库
支持sql语句的轻量级的嵌入式数据库。
创建数据表的方式:

public class DBOpenHelper extends SQLiteOpenHelper {//定义创建数据表dict的SQL语句final String CREATE_TABLE_SQL ="create table dict1(_id integer primary " +"key autoincrement ,text)";public DBOpenHelper(Context context, String name,SQLiteDatabase.CursorFactory factory, int version) {super(context, name, null, version);     //重写构造方法并设置工厂为null}@Overridepublic void onCreate(SQLiteDatabase db) {db.execSQL(CREATE_TABLE_SQL);}@Overridepublic void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {}
}

4)内容提供者:Content provider提供数据
5)网络存储方式:通过外部网络地址获取信息

三、六大布局

各种布局方式各有其特点,但就个人而言,还是比较喜欢线性布局的布局套布局方式。

  1. 线性布局:LinearLayout
  2. 表格布局:TableLayout
  3. 网格布局:GridLayout
  4. 相对布局:RelativeLayout
  5. 绝对布局:AbsoluteLayout
  6. 帧布局:FrameLayout

四、了解一下activity的生命周期

首先我们需要知道,Activity的生命周期一共有七种状态。
创建 -> 启动 -> 继续 - >暂停 -> 停止 -> 毁灭 ->重新开始


瞎画的图,但是大概应该就是这样。

androidStudio移动开发结课总结相关推荐

  1. 软件工程结课论文 敏捷开发在软件工程中的应用 大学编程作业(TUST 天津科技大学 2022年)

    软件工程结课论文 敏捷开发在软件工程中的应用 大学编程作业(TUST 天津科技大学 2022 年) 软件工程结课论文 敏捷开发在软件工程中的应用 大学编程作业(TUST 天津科技大学 2022 年) ...

  2. HTML5期末大作业:宠物网站设计——布偶猫(7页)带留言板 HTML+CSS+JavaScript web结课作业的源码 web网页设计实例作业 html大学生网站开发实践作业...

    常见网页设计作业题材有 ​​个人. 美食. 公司. 学校. 旅游. 电商. 宠物. 电器. 茶叶. 家居. 酒店. 舞蹈. 动漫. 明星. 服装. 体育. 化妆品. 物流. 环保. 书籍. 婚纱. 军 ...

  3. 《移动软件开发》结课作业:答案漂流瓶 实验报告

    姓名和学号? 陆子毅,20120012029 本实验属于哪门课程? 中国海洋大学22夏<移动软件开发> 实验名称? 结课实验:答案漂流瓶 Answer Drift Bottle 博客地址? ...

  4. Web后端开发训练营结课心得

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.SpringBoot简介 1.1 什么是SpringBoot 1.2 SpringBoot的主要特点 二.Spri ...

  5. 计算机视觉结课论文,计算机视觉与图像识别结课论文

    <计算机视觉与图像识别结课论文>由会员分享,可在线阅读,更多相关<计算机视觉与图像识别结课论文(8页珍藏版)>请在人人文库网上搜索. 1.计算机视觉与图像识别结课论文基于C+的 ...

  6. 计算机图形学结课论文,计算机图形学结课论文精要.doc

    计算机图形学结课论文精要 2017届结课论文 <计算机图形学基础教程> -小球的弹跳运动 学生姓名 学 号 所属学院 专 业 计算机科学与技术 班 级 塔里木大学教务处制 目录 摘 要1 ...

  7. 计算机在材料中的运用结课,计算机在材料科学工程中的应用的结课论文.doc

    计算机在材料科学工程中的应用的结课论文 <计算机在材料科学与工程中的应用>的结课论文 做为一个21世纪的大学生,计算机就显得尤为重要,而我们的本专业是21世纪的新型专业材料科学与工程,那么 ...

  8. 百度AI Studio飞桨平台 “深度学习”结课总结

    结课总结 2020.4.1-2020.4.8期间参加了百度AI Studio的"深度学习7日入门-CV疫情特辑"课程,这是今年自新冠疫情以来参加的第一次线上课程,偶尔通过paddl ...

  9. HTML网页设计结课作业~仿蘑菇街商城网站源码(HTML+CSS+JS)

    HTML网页设计结课作业~仿蘑菇街商城网站源码(HTML+CSS+JS) 临近期末, 你还在为HTML网页设计结课作业,老师的作业要求感到头大?HTML网页作业无从下手?网页要求的总数量太多?没有合适 ...

  10. 基于 Python 的开源Web开发框架django/哈工大学生成绩管理系统html实现/python结课大作业

    python结课大作业 (一)django安装 (1)django是什么 (2)基于django的网站 (3)django的设计理念 (4)django安装 (二)数据库安装 (1)数据库(DataB ...

最新文章

  1. 硬核!Python 四种变量的代码对象和反汇编分析
  2. Python -bs4反爬虫解决方法
  3. 作为项目的直接上级通过问题和风险来帮助项目
  4. 今天,Java编程周末提高班(第一期)正式结束
  5. gcc -strip编译选项的作用
  6. linux命令行 基础,Linux命令行基础,关于Bash需要知道的一些常识
  7. 男子趁前女友熟睡翻开眼皮,刷脸转走15万!支付宝:几率很小
  8. 1. C++基础知识学习及其深入理解(面向对象部分还没学) -- 课程1完成
  9. Unix/Linux环境C编程新手教程(40) 初识文件操作
  10. MySQL详细教程 这一篇就够啦!
  11. window下内网远程控制工具
  12. IDEA删除文件如何恢复
  13. Docker网络及资源管理
  14. 打印DPI如何与计算机DPI一致,像素英寸与dpi的那些事儿
  15. 站长网专访:南昌网事:那一场关于互联网的风花雪月
  16. antv g6对接后台数据_AntV - G6
  17. 暴力破解练习(一)信用卡号的验证
  18. Android学习之导航
  19. 利用 Travis CI 把 Android 项目部署到 github
  20. [野火]EBF i.MX6ULL

热门文章

  1. 笔记本安装ubuntu18.04 成功驱动wifi网卡的过程
  2. STM32F103 flash地址与数据存入时高低位的关系
  3. lammps自带命令create_atoms实现水分子建模
  4. WebIM 网页聊天工具
  5. 在centos虚拟机中修改IP地址
  6. HTML+CSS简单的淘宝首页框架布局小练(三)
  7. 分享网站变黑白色代码整站灰色插件方法
  8. html 360打不开,360浏览器打不开如何解决_360浏览器打不开解决教程
  9. STM32之DS1682
  10. mysql排序order by asc | desc