IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 移动开发 -> 《Android第一行代码》笔记 第一章:开始启程—你的第一行Android代码 -> 正文阅读

[移动开发]《Android第一行代码》笔记 第一章:开始启程—你的第一行Android代码

《Android第一行代码》笔记 第一章:开始启程—你的第一行Android代码

1.1 了解全貌——Android王国简介

1.1.1 Android系统框架

系统架构大致分为四层:Linux内核层、系统运行库层、应用框架层和应用层。

  1. Linux内核层
    Android系统是基于Linux内核的,这一层为Android设备的各种硬件提供了底层的驱动。
  2. 系统运行库层
    这一层通过一些C/C++库来为Android系统提供了主要的特性支持。还有Android运行时库,允许开发者使用Java来编写应用。
    Dalvik虚拟机: Android4.4及其以下平台使用的虚拟机,使得每一个应用都能运行在独立的进程当中,并且拥有一个自己的Dalvik虚拟机实例。
    ART(Android Runtime)运行环境: 4.4以上(5.0)平台使用的虚拟机技术,能够把应用程序的字节码转换为机器码,引入AOT预编译技术。
  3. 应用框架层
    主要提供了构建应用程序时可能用到的各种API。
  4. 应用层
    所有安装在手机上的应用程序。

1.1.2 Android以发布的版本

1.1.3 Android应用开发特色

  1. 四大组件:
    • 活动(Activity):应用程序的门面,所有看得到的东西。
    • 服务(Service):一直在后台运行,即使用户退出应用,服务仍然可以继续运行。
    • 广播接收器(Broadcast Receiver):允许应用接受来自各处的广播信息,如电话、短信等。
    • 内容提供器(Content Provid):应用程序之间共享数据。
  2. 丰富的系统控件
    控件是什么?按钮、输入框等
  3. SQLite数据库
  4. 强大的多媒体
  5. 地理位置定位

1.2 手把手带你搭建开发环境

1.2.1 准备所需要工具

  • JDK
  • Android SDK:安卓开发工具包
  • Android Studio
    • #lsb_release -a //查看ubuntu版本
    • #sudo snap install android-studio --classic //安装android-studio
    • avd运行有错——#sudo chmod 777 /dev/kev

1.2.2 搭建开发环境

1.3创建你的第一个Andriod项目

1.3.1 创建HelloWorld项目

  • Application name:应用名称,安装到手机之后,会在手机上显示该名称。

  • Wear:用于开发可穿戴设备。
  • TV:用于开发汽车。
  • Android Auto:用于开发汽车程序。

  • Activity Name:活动名字(每个单词首字母大写,中间没有空格,书中的示例:应用名+Activity)。
  • Layout Name:布局命名(全部小写,单词之间用_隔开)。??没有这个选项

1.3.2 启动模拟器

1.3.3 运行HelloWord

1.3.4 分析你的第一个Android程序

目录结构:

  • .gradle和.idea:放置AS自动生成的一些文件
  • app:项目中的代码、资源
    • build:与外层build类似,主要包含了一些在编译时自动生成的文件
    • libs:第三方的jar包都放在libs目录下,放在这里的包会被自动添加到构建路径中
    • androidTest:用来编写Android Test测试用例,可以对项目进行一些自动化测试
    • java:ava代码
    • res:在项目中使用到的所有图片(/drawable)、布局(/layout)、字符串(/values)等资源都要存放在这个目录下
    • AndroidManifest.xml:整个项目的配置文件,在程序中定义的四大组件都需要在这个文件中注册
    • test:用来编写Unit Test测试用例的,对项目进行自动化测试的另一种方式
    • .gitignore:作用和外层的.gitinore文件类似,用于将app模块内的指定的目录或文件排除在版本控制外
    • app.iml:自动生成的文件
    • build.gradle:app模块的gradle构建脚本,这个文件会指定很多项目构建相关的配置
    • proguard-rule.pro:用于指定项目代码的混淆规则,当代码开发完成后打成安装包文件,如果不希望代码被人破解,通常会将代码进行混淆,从而让破解者难以阅读
  • .build:包含在编译时自动生成的文件
  • gradle:包含gradle wrapper的配置文件
  • .gitignore:这个文件是用来将指定的目录或文件排除在版本控制外
  • build.gradle:项目全局的gradle构建脚本A
  • gradlew和gradlew.bat:用来在命令行界面中执行gradle命令的,gradlew在Linux和MAC系统中使用,gradlew.bat在Windows系统中使用
  • local.properties:用于指定本机中的Android SDK路径
  • settings.gradle:用于指定项目中所有引入的模块

配置文件(AndroidManifest.xml):

<!-- 表示对Main这个活动进行注册,没有注册的活动是不能使用的 -->
<activity android:name=".MainActivity">
            <intent-filter>
            <!-- 下两行代码表示这个活动是这个项目的主活动,在手机上点击应用图表,首先启动的就是主活动 -->
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
  • AppCompatActivity是Activity的子类,项目中所有的活动都必须继承Actvity或者他的子类。
  • onCreate():活动被创建时必定执行的方法 。
  • 逻辑与视图分离,布局文件中编写界面,然后在活动中引用。

1.3.5 详解项目中的资源

  • drawable开头的文件都是用来放图片的
  • mipmap开头的文件用来放应用图标
  • values开头的文件用来放字符串、颜色、样式等配置
  • layout文件用来放布局文件

在代码中通过R.string.xxx获得引用
在xml中通过@string/xxx获得引用
string用上面的文件名替换

1.3.6 详解build.gradle文件

Gradle:项目构建工具
安卓项目的三种依赖:1.本地依赖 2.库依赖 3.远程依赖

1.4 前行必备—掌握日志工具的使用

1.4.1 使用Android的日志工具Log

  • Log方法:
    • Log.v() 打印琐碎的、意义最小的日志信息,级别最低,对应级别verbose
    • Log.d([tag],[msg]) 打印调试信息,调试程序和分析问题,对应级别debug,tag传入当前类名就可以,msg则是要打印的具体内容
    • Log.i() 打印一些比较重要的信息,分析用户行为和数据,对应级别info
    • Log.w() 打印一些警告信息,对应级别warn
    • Log.e() 打印错误信息,对应级别error

1.4.2 为什么使用Log而不使用System.out

在onCreate()外面输入logt,按下tab键,会自动生成以当前类名作为值的TAG常亮。

  • 过滤器:
    • Show only selected qpplication 表示只显示当前选中程序的日志
    • Edit Filter Congifuration自定义过滤器。
  • 级别:打印大于等于当前选中级别的日志
  • 关键字搜索:支持正则表达式
  移动开发 最新文章
Vue3装载axios和element-ui
android adb cmd
【xcode】Xcode常用快捷键与技巧
Android开发中的线程池使用
Java 和 Android 的 Base64
Android 测试文字编码格式
微信小程序支付
安卓权限记录
知乎之自动养号
【Android Jetpack】DataStore
上一篇文章      下一篇文章      查看所有文章
加:2021-07-27 16:20:36  更:2021-07-27 16:21:33 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/5 2:35:42-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码