我的新书《Android App开发入门与实战》已于2020年8月由人民邮电出版社出版,欢迎购买。点击进入详情
文章目录
- 概述
- 学习路径
- 1) Programming
- 2) Android Studio
- 3) Android Components
- 4) Simple UI Design
- 5) Complex UI Design
- 6) Storage
- 7) Build
- 8) Threading
- 9) Debugging
- 10) Memory Leaks
- 11) Third-Party Libraries
- 12) Android Jetpack
- 13) Android Architecture
- 14) Firebase
- 15) Unit Testing
- 16) Security
- 17) App Release
- 18) Keep Practicing and Read Some Android Tips
概述
Android OS由Android Inc.开发,谷歌于2005年收购。各种应用程序,如游戏,音乐播放器,相机等都是为这些智能手机构建的,以便在Android上运行。Google Play商店拥有将近330万个应用程序。
今天,Android在全球范围内仍然占据主导地位。大约75%的人更喜欢使用Android,而iOS的这一比例为15%。它是一个操作系统,为应用程序提供了巨大的市场。
众所周知,如今Android有多受欢迎。现在的问题是,为什么选择Android,如何开始?从哪里开始?应该涵盖哪些主题?等等。 您是否需要从一本书中学习所有概念,或者您应该学习一些在线教程,或者您应该通过做一些项目来学习Android?因此,在本文中,我们将详细讨论所有这些内容。
学习路径
1) Programming
学习编程语言是进入Android开发的首要条件.
Java Programming Language
Kotlin Programming Language
Sound Knowledge of XML (Extensible Markup Language)
2) Android Studio
Android Studio是Google Android操作系统的官方集成开发环境,基于JetBrains的IntelliJ IDEA软件构建,专为Android开发而设计。
File Structure:
AndroidManifest.xml file
Java file
Drawable file
Layout file
mipmap file
colors.xml file
strings.xml file
styles.xml file
build.gradle(Module: app) file
Android Studio Overview:
Create a new project
Reopen, close, save the project
Create a new activity, classes, drawable resource files
Run the app on AVD of Emulator or in a real device etc.
3) Android Components
Android应用程序包含一些必要的构建块。这些松散耦合的组件由应用程序清单文件绑定,该文件包含每个组件及其交互方式的描述。
Activity:
Activity life cycle
Handle Activity State Changes
Understand Tasks and Back Stack
Processes and Application Lifecycle
Services:
Types of Android Services
The Life Cycle of Android Services
Content Provider:
Content URI:
Operations in Content Provider
Working of the Content Provider
Creating a Content Provider
Broadcast Receiver:
Implicit Broadcast Exceptions
4) Simple UI Design
在您了解了Android的不同组件之后,请开始探索下面给出的一些简单的UI设计。
Explore different layouts:
Frame
Linear
Relative
Constraint
View Elements:
TextView
EditText
Buttons
ImageView
Intent:
Implicit
Explicit
Intent Filter
5) Complex UI Design
一旦你对简单的UI组件有了概念之后,解析来可以学习更多复杂的组合UI组件:
ListView
RecycleVIew
Fragments
Dialogs
Toast
Bottom Sheets
Navigation Drawer
Tabs
Material Design
Some inserting Animations
6) Storage
在 Android 中,有三种类型的存储系统:
Shared Preferences
File System
Database
RoomDB
7) Build
Gradle
Debug/ Release Configuration
8) Threading
Threads
Looper
9) Debugging
开发人员最重要的技能之一是调试技能。因此,开发人员必须学习以下几点:
Exceptions
Error Handling
Logging
Memory Profiling
10) Memory Leaks
Cause of memory leaks
Detecting and fixing memory leaks
Context
11) Third-Party Libraries
Image Loading Libraries
Glide
Picasso
Fresco
COIL
Dependency Injection
Dragger
Networking
Retrofit
Multithreading
Coroutines
Rxjava
12) Android Jetpack
在Google官方网站上介绍Android Jetpack是一套库,工具和架构指南,可帮助开发人员快速轻松地构建出色的Android应用程序。它提供了通用的基础结构代码,因此你可以专注于开发你的独立应用。
AppCompat library
Architecture components,
Animation and transitions
Android Ktx
Navigation
Paging
Slices
WorkManager
13) Android Architecture
Android世界中的三个著名架构是:
MVVM (Model–View–ViewModel)
MVI (Model-View-Intent)
MVP (Model View Presenter)
14) Firebase
FCM (Firebase Cloud Messaging)
Analytics
Remote Config
App Indexing
15) Unit Testing
Local Unit Testing
Instrumentation Testing
16) Security
Encrypt / Decrypt
Proguard
17) App Release
Signed APK
Play Store