Coder Social home page Coder Social logo

androidnote's Introduction

Work Note

Git 资源导航

1.AndroidNote

阅读 & 收藏

  1. 我的阅读清单
  2. Treasures

教程

  1. Android 教程
  2. Kotlin
  3. Android 新特性
  4. 协程

开发工具

  1. Git
  2. 绘图
  3. 环境配置
  4. ADB
  5. 自动化工具

APK 小工具

  1. 获取 Android设备信息
  2. 短信发送功能验证

Gradle

工具类

  1. AndroidUtils
  2. 通用工具类和方法

Java 基础

  1. 字符串处理
  2. 数组处理
  3. 集合处理
  4. Java 回调机制
  5. 时间日期处理
  6. 文件操作

课程代码&测试用例

  1. 测试&测试用例

面试

  1. 面试
  2. 算法
  3. LeetCode

RxJava 系列

  1. RxJava

App 创建模板

  1. Android 应用创建模板

Android 常用功能

  1. 架构&jetpack
  2. App 更新&安装
  3. 打包
  4. 权限
  5. 适配
  6. 系统按键相关
  7. 相机
  8. 视频播放
  9. 扫描
  10. 蓝牙
  11. 混淆
  12. 音视频
  13. 网络请求
  14. AndroidJs
  15. 语言切换
  16. 进程保活
  17. 串口通信
  18. 跨进程通信
  19. 日志
  20. AOP

Android 优化

  1. 性能优化

Android UI

  1. UI
  2. ProgressBar
  3. XML
  4. 图片相关
  5. TextView
  6. 虚拟键盘
  7. EditText
  8. GridView
  9. Fragment
  10. ListView
  11. RecyclerView
  12. 动画

四大组件

  1. Activity
  2. Service
  3. Broadcast
  4. ContentProvider

组件化&插件化&热修复

  1. 组件化

源码 Demo

  1. 源码demo

数据库

  1. SQLite

AIDL

JNI

C/C++/NDK

Android App Dev Skills

参考资料

操作系统

  • Windows/MacOSX/Linux

编程语言

  • Java
  • HTML/JS (Hybrid/Web App)
  • C/C++ (NDK)
  • SQL (DB)
  • Kotlin

开发工具

  • IDE

  • Android Studio

  • Eclipse

  • 调试工具

    • 网络调试
      • Charles
      • Wireshark
      • Fiddler
      • tcpdump
      • Paw/Postman
    • 内存分析
      • monitor
      • MAT
    • Android tools
      • adb
      • draw9patch
      • hierarchyviewer
      • uiautomatorviewer
  • 版本管理

    • Git
      • Git命令
      • Github/GitLab
    • SVN
  • CodeReview

    • Gerrit
    • Github pull request
  • Bug/任务管理

    • Redmine
    • JIRA
    • Bugzilla
    • Teambition
    • Tower
  • 编译工具

    • Gradle
  • 持续集成

    • Jenkins
    • Travis CI
  • 应用分发

    • 蒲公英
    • fir.im

App基础

  • 基本组件
    • Activity
    • Service
    • Content Provider
    • Broadcast Receiver
    • Intent/Intent Filter
    • App Manifest File
  • UI
    • Layouts
    • Widgets
    • Resources
    • Animations
    • 设备适配
  • Connectivity
    • WiFi
    • Mobile网络
    • 网络状态监听
  • MultiMedia
    • Audio/Video
    • Camera/Gallery
  • GPS&Location&Map
    • 系统定位
      • GPS定位
      • Network定位
    • 3rd Map定位
      • 百度Map
      • 高德Map

App进阶

  • Process&Thread
    • Process
      • Linux进程
      • App进程原理
    • AIDL
      • 实现方式
      • 原理
    • Handler/Looper/MQ/Thread
    • Loader
    • AsyncTask
  • 性能优化
    • ANR
    • 布局层级性能优化
  • 内存优化
    • 内存检测工具
    • 内存分析工具
    • Bitmap优化
    • 内存泄露查找及分析
  • 网络优化
    • API优化
    • 低网速下优化
    • 流量使用优化
      • 判断当前网络类型
      • 使用缓存
  • 单元测试

App高级

  • 相关原理熟悉
    • Activity
      • 启动流程
      • 生命周期回调原理
      • 与View/Window的关系
      • 与Fragment的关系
    • View/Window
      • View/Window关系
      • View渲染
      • View事件分发处理流程
    • 编译打包
      • 编译打包原理
      • 逆向工程分析
      • 热修复
  • Hybrid App
    • 与Native App的异同
    • 主流框架
      • PhoneGap
      • ionic
      • React Native
  • 架构能力
    • 架构
      • MVC
      • MVP
      • MVVM
      • Flux
      • Clean Architecture
    • App框架
      • 分包
      • 分层
    • 设计模式
      • OOD原则
      • 常用设计模式运用
  • ART&Dalvik
    • AOT compilation
    • GC
    • Bytecode&.Dex
  • 自动化测试
    • monkey/monkey runner
    • UIAutomator
    • Espresso
    • Robotium

扩展学习

  • 响应式编程
    • Rx
      • RxJava
      • RxAndroid
      • RxBinding
    • Agera
  • 主流开源库
    • 快速开发
      • Android Annotation
      • ButterKnife
    • Views
      • 太多
    • HTTP模型
      • Retrofit
      • OkHttp
      • Volley
    • 图片处理
      • Glide
      • Fresco
      • Picasso
      • UIL
    • 依赖注入
      • Dagger2
    • 数据库
      • ORMLite
      • GreenDAO
      • Realm
      • Sugar
    • 辅助
      • Logger
      • LeakCanary
      • DbInspector

App 架构师技能图谱

(参考书籍 -- App 架构师)

Start

Learn the Basics

  1. 语言语法
    1. Kotlin/Java/C/C++
    2. OC/Swift
  2. 工具使用
    1. IDE
    2. 编译测试
    3. 版本管理
    4. 产品设计
    5. ......
  3. SDK 使用
  4. 开源选择

Getting Deeper

  1. 安全逆向
    1. 逆向分析
    2. 安全测试
    3. 安全建议
      1. 混淆签名
      2. 加固加壳
      3. 安全编码
  2. 热门技术
  3. 性能优化
    1. 硬件性能
    2. UI 和 CPU
    3. 内存性能
    4. 网络性能
    5. 包 Size
    6. 启动速度
    7. 代码优化
  4. 常用模块
    1. 基础组件
    2. 常用业务模块
    3. 编译打包
    4. 版本适配
    5. 三方 SDK
  5. 架构和重构
    1. 组件化和模块化
    2. UML 基本功
    3. 设计模式
    4. 接口设计
    5. 架构模式选型
    6. 重构
  6. 质量和稳定
    1. 质量稳定性指标
    2. CI 和代码监控
    3. Crash
    4. 测试专场
      1. 兼容性测试
      2. 自动化测试
      3. 性能/安全测试
      4. A/B Testing
      5. 代码覆盖率

Expand

  1. 项产运设

    1. 项目管理
    2. 产品思维
    3. 设计理念
    4. 运营统计
  2. 高效团队

End

androidnote's People

Contributors

hgncxzy avatar

Stargazers

 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.