【Android】搭配安卓环境及设备连接

https://activity.csdn.net/writing?id=10904\&spm=1001.2101.3001.8632

梦开始的地方,安卓开发,希望能坚持梳理整理好安卓各个知识块,能拥有自己的理解,并表达出来,一开始肯定做的不会尽善尽美,一起加油吧加油吧。

一:Android 介绍

Android 最初是谷歌开发出来的操作系统,这一行现有的我知道的职业方向:应用层 APP 开发(做移动端安卓软件开发),系统层 FrameWork 开发(暂时不了解)、逆向开发(可以理解成逆向破解公司开发出来的安卓软件,然后正向再对公司的软件进行加固)、音视频开发(不了解,猜测涉及编解码比较多)...

二:Android系统架构

1:层级图

2:各层级分析

第一层:Android底层是基于Linux的内核,可以说是Linux的一个分支;

复制代码
       Linux的优势:①开源②扩展性好③各大厂商的硬件都是基于Linux开发自己的驱动

第二层:因为驱动涉及商业机密(底层代码),所以就有了HAL硬件抽象层,可以理解成把Linux内核层丢出来的代码进行抽象, 包装一下

第三层:C和C++写的应用库和Android核心库

第四层:Java语言进行API封装,再一次进行简化

三:搭建Android开发环境

1:安装Android Studio

推荐访问AS的国内网站:https://developer.android.google.cn/studio?hl=zh-cn

2:创建项目

创建一个空的基础模版,其实就是一个布局文件,比如activity_main.xml

3:更新库

第一次启动会加载/下载很多包,其中gradle会超时,然后报错,

这个包需要我们手动下载和手动配置,注意gradle的版本号,最好使用国内镜像源去下载速度会更快(官方勿Q)

gradle下载地址:

gradle官网(可能会比较慢):https://services.gradle.org/distributions

腾讯云镜像:https://mirrors.cloud.tencent.com/gradle

阿里云镜像:https://mirrors.aliyun.com/macports/distfiles/gradle

下载完毕之后,放到这个路径下面,然后更新一下版本

4:版本号问题

后续还要更新版本如图修改安卓的版本号即可

四:连接Android设备

这里我们可以使用模拟器,有三种选择

①比如说mumu模拟器,雷神模拟器

②现实中自己的手机,后面会讲解具体如何USB投屏

③编译器提供的虚拟设备

1:创建模拟器

2:选择设备

3:模拟器启动!!!

兄弟太帅了!!!!到时候整个水果

4:运行项目初始程序

输出结果为以下视图(代码后续会分析)

我们还可以自己定义输出的文本内容,在activity_main.xml下

5:选择设备出现bug

配置模拟设备的时候出现的问题,80%不会遇见,这里可能是当前的windows系统有一些问题(不是很了解)

解决方法如下(重新更新一下)

取消勾选------>apply(卸载)------>在两个都勾上------>apply(下载)

不一定能解决问题,可以一试

五:真机调试

Android以及HarmonyOS NEXT版本之前的设备都可以调试,具体步骤如下:

以红米K70为例

  1. 进入设置页,找到"关于手机"或者"我的设备"
  2. 找到"系统版本号",有的手机还需要选择"全部参数和信息"才能看到系统版本号
  3. 对着系统版本号信息持续快速的点击3-5次,就会提示打开开发者模式
  4. 返回到设置页,找到"开发者模式",有的手机叫"开发者模式"
  5. 勾选"USB调试",部分手机就可以直接开始调试代码
  6. 另外有的手机还需要下滑找到"USB配置",更改为MIDI
  7. 有些手机还需要允许"应用安装"
相关推荐
马士兵教育16 小时前
Java还有前景吗?Java+AI大模型学习路线及项目?
java·人工智能·python·学习·机器学习
snow@li16 小时前
Java:理解 Gradle / 后端项目的管家 / 打包SpringBoot 应用 / 完成编译、下载依赖、运行测试、打包 JAR/WAR / 速查表
java
云烟成雨TD16 小时前
Spring AI 1.x 系列【57】动态工具发现:Tool Search Tool
java·人工智能·spring
zfoo-framework17 小时前
[修改代码使用]codex官方app中使用中转(不需要cc-switch) 1.config.toml 2.sk方式登录
java
逍遥德17 小时前
MQTT教程详解-05.SpringBoot集成mqtt client 性能分析
java·spring boot·spring·mt
ha_lydms17 小时前
AnalyticDB分区、分布键性能优化
android·大数据·分布式·性能优化·分布式计算·分区·analyticdb
云烟成雨TD17 小时前
Spring AI 1.x 系列【54】Retry 机制分析
java·人工智能·spring
weixin_5231853217 小时前
Collections.unmodifiableMap详解:真的不可修改吗?
java·linux·前端
点燃大海17 小时前
SpringAI构建智能体
java·spring boot·spring·springai智能体
xier_ran17 小时前
【infra之路】02_RadixAttention与KV_Cache管理
java·spring boot·spring