移动设备软件开发-1

移动设备软件开发

前言

1.移动设备软件开发学什么?

  • Activity,就是一个页面,需要在这个页面上进行相关的UI编程。

  • Service:可以在后台进行运行。如QQ音乐后台播放。

  • 广播机制:可以显示一些提示信息,比如手机没电时的弹窗显示。

  • 数据共享:实现一个程序调用另一个程序中的数据的时候就需要用到词方法。会学一个轻量级的关系数据库SQLite。

2.需要掌握什么?

简单控件:

  • TextView:文本显示

  • EditText:输入框

  • Button:按钮

  • Toast:可以显示用户的点击消息

  • CheckBox:复选框

  • ImageView:设置图片

  • RadioGroup:单选

  • ProgressBar:进度条

复杂控件:

  • Spinner:下拉框

  • ListView,:列表形式展示数据

  • DatePicker:日期选择器

  • TimePicker:时间选择器

  • AlertDialog:对话框

布局管理器:

  • LinearLayout:线性布局

  • RelativeLayout:相对布局

  • TableLayout:表格布局

1.第一章

1.1移动设备简介

1.1.1移动终端介绍

1.移动终端是什么?

  • 便于随身携带,并拥有强大处理能力的计算设备。常见的笔记本,pad和phone等。

2.移动终端功能?

  • 上网,收发邮件

  • 信息处理

  • 可通话

  • 拍照

  • 听音乐

  • 玩游戏

  • 等等

3.移动设备产品?

什么样的才能真正的称之为移动设备?

  • 硬件+os+网络=移动设备

1.1.2移动操作系统介绍

1.操作系统是什么?

  • 管理硬件和软件资源的程序。

2.常见的智能操作系统?

  • IOS

  • Android

  • 鸿蒙

  • 等等

3.安卓os?

  • 基于Linux系统

  • 免费开源

  • 用Java开发

4.Android开发类型?

  • Android系统移植:硬件和os之间的,就是如何把系统放到硬件设备上。

  • Android系统开发:os开发,例如原先的os不支持人脸识别,编写os类库就可以实现人脸识别,就是基于系统的开发。

  • Android应用程序开发:建立在os基础上。

1.1.3安卓

1.安卓是什么?

  • 基于Linux平台的开源移动操作系统。早期由Google开发,后由开放手机联盟(OHA)开发。

2.OHA成员?

通俗说就是基于安卓的所有周边厂家

  • 电信运营商

  • 半导体芯片商

  • 手机硬件制造商

  • 软件厂商

  • 商品化公司

3.安卓的不足?

  • 安全和隐私

  • 运营商能够影响Android手机

  • SDK没有统一标准,不统一

4.安卓的系统架构?

从底往上以此为:

  • Linux OS和相关驱动:蓝牙,wifi,声卡,显卡等等

  • 本地框架和Java运行环境:此处有库,系统开发人员操作的就是这里。SQLite也存在这里

  • Java框架:如窗口管理,电话管理,资源管理,定位管理

  • Java程序:联系人,音乐播放器,浏览器等

第一层主要是C实现,第二层是C++,第一层属于内核空间,2,3,4才是用户空间,用户可以操纵的地方。对于应用开发人员来说3和4层才是可见的。

5.Activity?

  • 就是一张屏幕,也是存放控件的地方。Activity由继承某一个父Activity形成的。

6.ContentProvider?

  • 对于安卓中的数据库只能被创建者访问到,其他的应用不能访问

  • ContentProvider可以实现跨应用读取数据,跨应用访问数据的唯一方式

7.Service?

  • 不可见的后台运行的程序

  • 后台长期运行的服务(如音乐播放器,下载服务,定位服务等)

  • 进程间调用服务

  • 不需要UI界面

8.BroadcastReceiver广播接收器?

  • 接收并响应广播消息的组件

  • 例如,手机电量不足,手机接到一个短消息,就会产生一个收到短消息的事件,如果是垃圾短信,可以设置拦截该短信,也可以不设置,让短信正常接收。

  • 还有AI检测到陌生电话自动接听

9.Intent?

  • 负责对应用中一次操作的动作、动作涉及数据、附加数据进行描述

  • 可以实现不同Activity之间的数据传递

  • 联系各组件的纽带

  • 可通过其启动其它组件

  • 在组件间传递数据

1.2安卓开发环境搭建

1.2.1JDK下载、安装、环境变量配置

1.下载地址:win-64位-jdk8

JavaSE Upgrade

2.环境变量配置

  • 系统桌面“计算机”—“属性”—“高级系统设置

  • JAVA_HOME:Java的根目录(bin的上一级)

  • PATH:bin目录

  • classpath:编译后字节码存在的位置

1.2.2And Studio安装

1.下载地址:

Android Studio 应用社区-安卓应用下载中心:安卓游戏/安卓软件/游戏合集/软件合集/安卓游戏下载/安卓软件下载

2.安装的时候勾选:

  • Android Virtual Device:预置的模拟器虚拟设备

  • 其余一路next

3.安装完成,启动后

  • 弹出框选择“Do not import settings”

  • 无法访问Android SDK,先Cancel

  • 一路next

4.出现创建项目的界面

  • 新建一个空项目

移动设备软件开发-1_第1张图片

 

  • 选个比较低的版本:5或6就可以,向上兼容

移动设备软件开发-1_第2张图片

 

5.创建虚拟机

  • 创建

 

移动设备软件开发-1_第3张图片

 

  • 勾选默认的一路next就可以

移动设备软件开发-1_第4张图片

  • 创建后显示

移动设备软件开发-1_第5张图片

 

6.运行项目

  • 会出现hello world

移动设备软件开发-1_第6张图片

 

1.2.3安卓项目结构分析

1.安卓采用的是Grade构建项目,Gradle 是一个非常先进的项目构建工具。

2.Project相当于Eclipse里的工作空间workspace。Module对应一个可执行程序。

3.项目结构?

  • 模块

Gradle Scripts:一种构建管理工具

 

4.各文件夹的作用?

  • AndroidManifest.xml:安卓项目的配置文件,配置各个组件和一些访问权限

  • .java:源码,业务逻辑

  • R.java:收录了当前页面的所有资源,并创建对应的ID。

  • res:资源文件夹,图片,声音,布局文件等。凡是项目中能够用到的资源都放到这个文件夹中。

  • drawable:存放一些自定义形状和背景选择器

  • layout:布局文件,文件以xml行驶本保存

  • mipmap:存在图片,比在drawable下加载的速度更快

  • values:存在一下资源的描述文件,颜色,尺寸,字符串,样式等等。

移动设备软件开发-1_第7张图片

 

5.MainActivity.java?

代码如下:

public class MainActivity extends AppCompatActivity {
​
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }
}
  • onCreate声明需要显示的内容,会在首次启动的时候被调用

  • onCreate是安卓的主入口,知识安卓声明周期中的一个

你可能感兴趣的:(安卓软件开发,android)