安卓Android入门

安卓作为日常生活中不可缺少的移动操作系统,在5G的发展和应用过程中发挥着其重要的作用。

5G是第五代移动通信技术,拥有更快的速度、更高的带宽、更低的延迟和更大的连接密度。这一技术的快速发展为移动设备和应用提供了更多的可能性。

安卓和5G的关系是相辅相成的,两者共同推动了移动通信和应用技木的发展,为用户带来了更加便捷、高效的移动体验。

文章目录

  • 一、5G与智能终端
    • 1.1 5G网络技术
    • 1.2 智能终端
      • 1.2.1 常见的移动操作系统:
      • 1.2.2 未来的发展
  • 二、Android 简介
    • 2.0 Android SDK
    • 2.1 体系结构:
      • (0)在Android系统的架构中,通常包括以下几个主要层级:
      • (1)底层Linux(核心)
      • (2)中间层
        • 函数库
        • 运行时
      • (3)应用框架层
      • (4)应用层
    • 2.2 Android Studio
      • 2.2.1 安装
      • 2.2.2 运行程序
      • 2.2.3 卸载
      • 2.2.4 创建一个心仪的AVD虚拟机
      • 2.2.5 插件推荐
      • 2.2.6 Android Studio面板介绍
        • LogCat
  • 三、Android 应用程序
    • 3.1 项目构成
      • AndroidManifest.xml
    • 3.2 安卓的四大组件包括:
    • 3.3 Activity生命周期

一、5G与智能终端

1.1 5G网络技术

5G的简称是第五代移动通信技术(Fifth Generation),LDPC码、极化码、Turbo码。

5G之前移动通信标准经历了 1G(模拟语音)、2G(数字化语音)、3G(多媒体通信)、4G(无线宽带)的发展历程。

1.2 智能终端

在5G时代,智能终端的内涵更为广泛,可以通过网络实现高速、低延迟的互联网接入,为用户提供更加丰富、便捷的服务。

智能终端是指安装手机操作系统(如Android、iOS等)的设备,通过使用宽带无线移动通信技术(如4G、5G等)实现互联网接入。这些设备可以通过下载、安装应用软件和数字内容为用户提供服务,如社交媒体、游戏、购物、支付等。这些设备具备一定的智能计算能力,能够执行一些复杂的任务,如语音识别、图像识别、自然语言处理等。

 智能手机包括:硬件、操作系统、网络支持

1.2.1 常见的移动操作系统:

智能手机操作系统主要有Android、iOS和鸿蒙。

Android:Android是由谷歌(Google)开发的开源操作系统,被广泛应用于大多数智能手机和平板电脑上。它提供了强大的自定义功能和丰富的应用程序生态系统(Google Play商店)。Android具有灵活性和开放性的特点,允许用户自定义和调整其界面和功能,支持多任务处理、通知管理、智能助手等功能。

iOS:iOS是由苹果公司开发的专有操作系统,仅用于苹果公司的iPhone、iPad和iPod Touch等设备。iOS设计简洁、稳定而流畅,注重用户体验和安全性。它提供了一个丰富的应用程序生态系统(App Store),并与苹果的硬件和软件紧密集成,提供优化和统一的使用体验。

鸿蒙(HarmonyOS):鸿蒙是华为公司自主研发的分布式操作系统,于2019年正式发布。鸿蒙旨在构建一种支持多设备、多场景的统一操作系统,涵盖手机、平板、智能穿戴、智能家居、汽车等多个领域。鸿蒙具有高度的灵活性和可扩展性,能够快速适配各种设备并提供流畅的体验。

总的来说,Android和iOS是目前市场份额最大的智能手机操作系统,它们都有自己独特的特点和优势;而鸿蒙作为新兴的操作系统,正在不断发展和拓展应用范围,为用户带来更多可能性。

1.2.2 未来的发展

安全性、电池采用新技术、人工智能等等一系列为更好的交互体验。

二、Android 简介

Android基于Linux内核,这使得它具有强大的硬件兼容性和稳定性。

iOS基于Unix内核,这使得它具有良好的稳定性和安全性。

Android平台组成:操作系统、中间件、用户界面、应用软件。

2.0 Android SDK

SDK (Software development kit) ,软件开发工具包,是指为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具的集合。Android SDK是指专门用于Android手机操作系统创建应用软件的软件开发工具包。

2.1 体系结构:

应用程序程序层、应用框架层、系统库和Android运行时和Linux内核(操作系统OS)
在这里插入图片描述

(0)在Android系统的架构中,通常包括以下几个主要层级:

  1. Linux内核层:作为Android系统的基础,提供了底层的硬件驱动、内存管理、进程管理等功能。Android系统构建在Linux内核之上,利用Linux内核提供的稳定性和安全性。

  2. Android系统运行库层:包括了C/C++库以及一些核心的Java类库,用于支持Android应用程序的运行。其中包括了运行时环境和核心Java类库,支持应用程序的运行和管理。

  3. Android应用框架层:提供了各种系统服务和API接口,包括了窗口管理、资源管理、通讯服务等。开发人员可以通过应用框架层提供的API来访问系统功能,实现应用程序的开发和运行。

  4. Android应用层:最上层是用户直接面对的应用程序,包括各种应用软件,如社交应用、游戏、工具应用等。用户通过应用层与系统交互,进行各种操作和任务。

了解Android各个版本及API之间的关系
在这里插入图片描述

(1)底层Linux(核心)

C语言开发,只提供基本功能是硬件和其他软件之间的一个抽象隔离层。提供着安全机制、内存管理、进程管理、网络协议栈、WIFI驱动、电源管理等等。

(2)中间层

包含库和虚拟机,由C++开发的
函数库

Surface Manager:用于管理屏幕显示和窗口管理。负责处理显示表面的分配、合成和刷新等任务,帮助应用程序实现流畅的界面显示和交互。

Media Framework:用于处理音频和视频数据的录制、播放和管理。

SQLite是一种轻量级的关系数据库管理系统,被广泛用于安卓系统中存储和管理应用程序的数据。

在安卓系统中,字体渲染通过FreeType库来实现。

运行时

核心库:提供了Android系统特有的功能和Java功能的代码

Dalvik虚拟机:Android系统的核心组件之一,它是一个基于寄存器的虚拟机;主要功能是运行Dex格式的字节码,这是Android系统中的应用程序的标准格式。【是.class文件编译后产生的,因此文件更小。】 (一个应用启动都运行一个单独的虚拟机运行在-一个物的进程中。)

(3)应用框架层

在安卓系统中,应用框架层是系统的核心部分,它提供了许多关键的服务和API,应用程序可以运行在安卓设备上。以下是应用框架层的一些主要组成部分:

  1. Activity Manager:负责管理应用的生命周期,包括创建、销毁和切换应用。

  2. Window Manager:负责管理应用的窗口,包括窗口的创建、销毁和切换。

  3. Content Providers:应用可以共享数据(跨进程数据访问)。

  4. View System:应用可以创建和管理用户界面。

  5. Package Manager:负责管理应用的安装、卸载和更新。

  6. Telephony Manager:应用可以访问电话服务。

  7. Location Manager:应用可以访问位置服务(地图相关的服务)。

  8. Notification Manager:应用可以创建和管理通知(状态栏显示提示信息)。

  9. Resource Manager:应用可以访问系统资源,如字符串、图像和布局(处理非代码内容)。

  10. Activity Manager Service:应用可以访问系统的活动管理服务。

这些组件共同工作,使得应用可以在安卓设备上运行,并与设备的硬件和其他应用进行交互。

(4)应用层

应用层是用户直接与之交互的部分,包括各种应用程序和用户界面。
由Java/kotlin编写

在这里插入图片描述

2.2 Android Studio

2.2.1 安装

(需要同意其协议)下载 Android Studio 和应用工具 - Android 开发者 | Android Developers (google.cn)

养成良好的习惯,我们把和开发的相关工具放置在D盘下我们创建一个develop文件夹中方便管理。
在这里插入图片描述

2.2.2 运行程序

new一个Empty Views Activity

当我们以java为例的讲解的时候我们就把语言选择为Java,
当然我们还需要把脚本控制语言换成Gradle
最终的是我们一定要确定好包名和项目的保存地址
API尽量选择用户可以上行下行几乎键入的版本

同意并等待Gradle的项目构建

运行程序,最终可以看到自带的模拟器出现app程序

2.2.3 卸载

(1)控制面板 ->程序(卸载程序)

(2)配置信息的删除

【1】进入“C:\Users<你的用户名下>”目录下
删除文件夹
删除.android 文件夹
删除 .AndroidStudioX.X文件夹
删除.gradle 文件夹
删除Android文件夹

【2】用户名下>\AppData\Roaming\Google 删除 .AndroidStudioX.X 文件夹

【3】进入C:\Users\lenovo\AppData\Local\Google 删除 .AndroidStudioX.X 文件夹

2.2.4 创建一个心仪的AVD虚拟机

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

2.2.5 插件推荐

在这里插入图片描述

2.2.6 Android Studio面板介绍

在这里插入图片描述

LogCat

在这里插入图片描述

多个级别–颜色不同
在这里插入图片描述

三、Android 应用程序

3.1 项目构成

AndroidManifest.xml

AndroidManifest.xml是XML格式的Android程序声明文件,是全局描述文件,包含了Android系统运行Android程序前所必须掌握的重要信息,这些信息包含应用程序名称、图标、包名称、模块组成、授权和SDK最低版本等。创建的每个Android项目应用程序必须在根目录下包含一个AndroidManifest.xml工程文件

3.2 安卓的四大组件包括:

  1. Activity(活动):Activity是Android应用的一个组件,它提供了一个屏幕,用户可以在屏幕上进行交互。每个Activity都是一个单独的类,它通常对应于应用的一个屏幕。

Activity(活动)
显示可视化的用户界面,并接收到所有因交互所产生的事件。我们的App可以包含一个或者多个活动,其中只有一个座位mainActivity启动显示。

View来管理用户界面UI,通过XML描述定义,也可以在代码中生成。类swing设计,通过布局layout组织。
在这里插入图片描述

  1. Service(服务):Service是一个后台运行的组件,它没有用户界面。Service通常用于执行长时间运行的操作,例如下载文件或播放音乐。

  2. BroadcastReceiver(广播接收器):BroadcastReceiver是一个组件,它可以接收系统或应用发送的广播消息。例如,当设备的电池电量发生变化时,系统会发送一个广播消息,所有注册了电池电量变化的BroadcastReceiver都会接收到这个消息。

  3. ContentProvider(内容提供器):ContentProvider是一个组件,它提供了一种统一的方式来访问应用的数据。其他应用可以通过ContentProvider来读取或写入应用的数据,这样可以确保数据的安全性和一致性。

3.3 Activity生命周期

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/757650.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Qt 多元素控件

Qt开发 多元素控件 Qt 中提供的多元素控件有: QListWidgetQListViewQTableWidgetQTableViewQTreeWidgetQTreeView xxWidget 和 xxView 之间的区别 以 QTableWidget 和 QTableView 为例. QTableView 是基于 MVC 设计的控件. QTableView 自身不持有数据. 使用QTableView 的 …

OSPF特殊区域(stub\nssa)

stub区域——只有1类、2类、3类&#xff1b;完全stub区域——只有1类、2类 NSSA区域&#xff1a;本区域将自己引入的外部路由发布给其他区域&#xff0c;但不需要接收其他区域的路由 在NSSA区域的路由器上&#xff0c;引入外部路由时&#xff0c;不会转换成5类LSA&#xff0c…

HarmonyOS系统开发ArkTS常用组件切换按钮及参数

Toggle为切换按钮组件&#xff0c;一般用于两种状态之间的切换&#xff0c;例如下图中的蓝牙开关。 Toggle组件的参数&#xff1a;Toggle(options: { type: ToggleType, isOn?: boolean }) type属性用于设置Toggle组件的类型isOn属性用于设置Toggle组件的状态selectedColor()…

51-31 CVPR’24 | VastGaussian,3D高斯大型场景重建

2024 年 2 月&#xff0c;清华大学、华为和中科院联合发布的 VastGaussian 模型&#xff0c;实现了基于 3D Gaussian Splatting 进行大型场景高保真重建和实时渲染。 Abstract 现有基于NeRF大型场景重建方法&#xff0c;往往在视觉质量和渲染速度方面存在局限性。虽然最近 3D…

docker入门(四)—— docker常用命令详解

docker 常用命令 基本命令 # 查看 docker 版本 docker version # 查看一些 docker 的详细信息 docker info 帮助命令&#xff08;–help&#xff09;&#xff0c;linux必须要会看帮助文档 docker --help[rootiZbp15293q8kgzhur7n6kvZ /]# docker --helpUsage: docker [OPTI…

【C语言】结构体类型名、变量名以及typedef

文章目录 分类判断结构体成员的使用typedef 分类判断 struct tag {char m;int i; }p;假设定义了上面这一个结构体&#xff0c;tag 就是类型名&#xff0c; p 就是变量名&#xff0c; m 和 i 就是结构体成员列表。 可以这么记&#xff0c;括号前面的是类型名&#xff0c;括号后…

【vue核心技术实战精讲】1.1 Vue开篇介绍 + 1.2 Vue的起步 和 插值表达式

文章目录 准备开始适应人群vue 框架学习路线一、vue 基础1、历史介绍2、前端框架与库的区别? 二、vue的起步 和 插值表达式Stage 1&#xff1a;下载包&#xff0c;并放入项目中Stage 2&#xff1a;编码Stage 3&#xff1a;源码 与 效果 准备开始 适应人群 有一定的HTML/CSS/…

Android仿智联详情

很久没有发文章了&#xff0c;这一年多一直在卷。最近由于疫情的原因&#xff0c;很多公司都在给员工发“毕业证”&#xff0c;我也很荣幸拿到了“毕业证”。不知道是应该开心还是桑心&#xff0c;北京最近因为疫情基本都居家办公&#xff0c;而我也开始了做简历&#xff0c;刷…

OpenCV C++ 图像处理实战 ——《物体数量计数与尺寸测量》

OpenCV C++ 图像处理实战 ——《物体数量计数与尺寸测量》 一、结果演示二、多尺度自适应Gamma矫正的低照度图像增强三、轮廓计算与尺寸测量3.1 图像二值化3.2 轮廓提取3.3 物体计数与尺寸测量四、源码测试图像下载总结一、结果演示 二、多尺度自

java数据结构与算法刷题-----LeetCode135. 分发糖果

java数据结构与算法刷题目录&#xff08;剑指Offer、LeetCode、ACM&#xff09;-----主目录-----持续更新(进不去说明我没写完)&#xff1a;https://blog.csdn.net/grd_java/article/details/123063846 文章目录 1. 左右遍历2. 进阶&#xff1a;常数空间遍历&#xff0c;升序降…

HCIA复习实验题(静态路由综合实验)

一、实验拓扑 二、实验划分 三、实验需求 如上图所见&#xff1b; 四、实验结果 1.实现内网通&#xff1b; &#xff08;1&#xff09;配置R1~R5的接口IP&#xff08;以及环回接口&#xff09;&#xff1b; R1接口&#xff1a; [R1]int GigabitEthernet 0/0/0 [R1-Gigab…

低代码 + 大模型,让业务系统智能化,加速想法落地

1 AI 时代下的应用 大模型来了&#xff0c;每个行业/领域都在融合大模型。作为低代码开发的探索者&#xff0c;今天我们来聊聊业务系统是如何融合大模型实现智能化的。 我们用百度内部实际应用场景来举例。比如请假&#xff0c;智能业务助手可以帮你&#xff1a; 了解…

从零开始写 Docker(七)---实现 mydocker commit 打包容器成镜像

本文为从零开始写 Docker 系列第七篇&#xff0c;实现类似 docker commit 的功能&#xff0c;把运行状态的容器存储成镜像保存下来。 完整代码见&#xff1a;https://github.com/lixd/mydocker 欢迎 Star 推荐阅读以下文章对 docker 基本实现有一个大致认识&#xff1a; 核心原…

Jmeter-基础元件使用(二)

一、Jmeter属性 当我们想要在不同线程组中使用某变量&#xff0c;就需要使用属&#xff0c;此时Jmeter属性的设置需要函数来进行set和get操作 1.创建set函数 2.然后采用Beanshell取样器进行函数执行 3.调用全局变量pro_id 4.将上面生成的函数字符串粘贴到另一个线程组即可…

合合信息扫描全能王亮相静安区3·15活动,AI扫描带来绿色消费新体验

保护消费者的合法权益&#xff0c;是全社会的共同责任。为优化消费环境、促进品质消费高地建设&#xff0c;打造安全优质和谐的消费环境&#xff0c;上海静安区消保委于3月15日举办静安区2024年“315”国际消费者权益日活动。 “激发消费活力&#xff0c;绿色低碳同行”是本次3…

C语言字符函数和字符串函数详解

Hello, 大家好&#xff0c;我是一代&#xff0c;今天给大家带来有关字符函数和字符串函数的有关知识 所属专栏&#xff1a;C语言 创作不易&#xff0c;望得到各位佬们的互三呦 一.字符函数 在C语言中有一些函数是专门为字符设计的&#xff0c;这些函数的使用都需要包含一个头文…

管理类联考–复试–英文面试–问题–WhatWhyHow--纯英文汇总版

文章目录 Do you have any hobbies? What are you interested in? What do you usually do in your spare time? Could you tell me something about your family&#xff1f; Could you briefly introduce your family? What is your hometown like? Please tell me so…

在Arm 虚拟硬件(AVH)部署深度学习OCR算法

AI算法的嵌入式部署 AI算法在独立的设备上运行其实就是行业内的嵌入式AI的概念, 大致过程如下: 开发AI模型, 2.对数据集进行处理, 3.训练AI模型并验证效果, 4.转成ONNX格式(ONNX:万金油中间格式,给模型优化和部署带来了更多可能性)或者借助libtorch或者TensorFlow来部署C++版…

Prometheus+Grafana 监控Tongweb7

文章目录 1.准备工作2.Tongweb7部署3.Prometheus部署4.上传jar包并配置Tongweb75.Prometheus配置6.安装和配置Grafana 1.准备工作 本次参考&#xff1a;Prometheus监控Tongweb容器 1.使用虚拟机ip&#xff1a;192.168.10.51&#xff08;tongweb&#xff09;&#xff0c;192.1…

day14-SpringBoot 原理篇

一、配置优先级 SpringBoot 中支持三种格式的配置文件&#xff1a; 注意事项 虽然 springboot 支持多种格式配置文件&#xff0c;但是在项目开发时&#xff0c;推荐统一使用一种格式的配置 &#xff08;yml 是主流&#xff09;。 配置文件优先级排名&#xff08;从高到低&…