Android 开发从入门到精通-学习文档

作者: 阿里云云栖号 | 来源:发表于2017-04-07 11:23 被阅读1292次

    Android-Tips

    This is an awesome list of tips for android.

    If you are a beginner, this list will be the first choice for you when you have a difficult time.

    WelcomeStarandFork, your support is my greatest affirmation.

    学习 Android 至今,大大小小的坑没少踩过,庆幸的是,在强大的搜索引擎与无私奉献的人们的帮助下,那些坑都顺利地被填平了。

    为了日后在遇到同样的问题时,能免于再次搜索带来的麻烦,我养成了收藏书签的习惯,随着书签(Tips)的日积月累,我想,是时候该有这个项目了。

    如果你是个 Android 新人,又不善于搜索或不知道从何开始,那么我相信这份列表,将会成为你的首选。

    当然,这份列表并不完美,如果不幸,这里没有你所踩到的坑,或者对于某个问题你有更好的 Tips,欢迎与大家分享,让我们一起来维护这个项目!

    你可以通过Pull request的形式进行提交,当然也欢迎Star与Fork:)

    由于各种问题,给出的链接可能会无法正常访问。遇到这种情况欢迎大家提交Issue,Contributers 也可以使用Utils里面的URLChecker来检测列表里链接的有效性,你可以选择更改为新的有效连接,或者把需要梯子的文章以 Markdown 的形式保存在 Utils/Content 目录下,并注明原文章链接和作者。

    目录

    A

    B

    C

    D

    E

    F

    G

    H

    I

    J

    K

    L

    M

    N

    O

    P

    Q

    R

    S

    T

    U

    V

    W

    X

    Y

    Z

    Others

    Contributors

    Contact Me

    A

    ADB

    Installing ADB on Windows 7

    Android ADB常用命令

    Android开发调试工具ADB的使用

    Android通过Wifi来调试你的应用

    Adb connection Error:远程主机强迫关闭了一个现有的连接

    Adapter

    Android简便通用的SimpleBaseAdapter

    Android数据适配器(Adapter)优化:使用高效的ViewHolder

    Android 快速开发系列 打造万能的ListView GridView 适配器

    AIDL

    android进程间通信:使用AIDL

    Android AIDL使用详解

    android跨进程通信(IPC): 使用AIDL

    Android中的跨进程通信的实现(一)——远程调用过程和aidl

    Android Studio下如何配置AIDL文件

    Android-Async-Http

    Asynchronous Http Client for Android

    快速Android开发系列网络篇之Android-Async-Http

    android-async-http框架库使用基础

    Android Studio

    Android Studio导入项目

    Android Studio 简单设置

    Android Studio 简介及导入 jar 包和第三方开源库方法

    Android Studio使用技巧系列教程(一)

    Android Studio中如何使用Git和Github来管理项目

    Android Studio 权威教程

    倍数提高工作效率的Android Studio奇技

    Android Studio 快捷键(Windows)

    Android Studio详细教程汇总

    Android Studio有什么奇技淫巧

    AQuery

    AQuery Image Loading

    Android之使用Android-query框架进行开发(一)

    AsyncTask

    Android AsyncTask完全解析,带你从源码的角度彻底理解

    Android中AsyncTask的简单用法

    Android开发者:你真的会用AsyncTask吗?

    深入解析AsyncTask,多例子版

    Annotations

    AndroidAnnotations框架入门教程一之介绍

    How to stop an animation (cancel() does not work)

    B

    Bitmap

    图片处理

    Android中自定义布局中加载图片BitmapFactory.options详解

    Android学习笔记进阶16之BitmapShader

    Android 优化Bitmap避免OutOfMemoryError

    Android 异步加载图片,使用LruCache和SD卡或手机缓存,效果非常的流畅

    Android 开发绕不过的坑:你的 Bitmap 究竟占多大内存?

    Broadcast

    【Android】BroadCast广播机制应用与实例

    玩转Android---组件篇---Broadcast Receiver(广播接收器)

    【Android】动态注册广播接收器

    C

    Callback

    How to Define Callbacks in Android?

    一个经典例子让你彻彻底底理解java回调机制

    Java设计模式-回调函数和观察者模式

    CardView

    Android5.0新控件CardView的介绍和使用

    Android CardView Example

    Android CardView Widget – Add Cards to a List using RecyclerView

    Configuration Change

    Android Configuration change引发的问题及解决方法

    Handling Runtime Changes

    Context

    android学习—— context 和 getApplicationContext()

    Android中Context详解 ---- 你所不知道的Context

    Difference between getContext() , getApplicationContext() , getBaseContext() and “this”

    CoordinatorLayout

    CoordinatorLayout与滚动的处理

    Handling Scrolls with CoordinatorLayout

    D

    Download

    Download a file with Android, and showing the progress in a ProgressDialog译文

    Java 服务器端支持断点续传的源代码【支持快车、迅雷】

    Java 多线程断点下载文件

    Android 后台Service下载 (一)

    Android网络编程 --断点续传下载文件

    android 多线程断点续传下载 一

    Dagger

    E

    EventBus

    EventBus使用详解(一)——初步使用EventBus

    快速Android开发系列通信篇之EventBus

    Android EventBus实战 没听过你就out了

    F

    Fragment - 碎片

    Android Fragment完全解析,关于碎片你所需知道的一切

    Android Fragment 你应该知道的一切

    Android系列之Fragment(二)----Fragment的生命周期和返回栈

    处女男学Android(九)---Fragment进阶篇之Fragment生命周期和回退栈

    Fragment笔记整理

    Android实战技巧:Fragment的那些坑

    android Fragments详解四:管理fragment

    Android Fragment 嵌套使用(Nested Fragments)

    FlowLayout - 自定义流布局

    Android 自定义ViewGroup - 实现FlowLayout - 本文出自【张鸿洋的博客】

    G

    Glide

    Glide 一个专注于平滑滚动的图片加载和缓存库

    Google推荐的图片加载库Glide介绍

    Gradle

    用Gradle 构建你的android程序

    Android Studio系列教程四--Gradle基础

    使用Gradle构建Android项目

    使用Gradle管理你的Android Studio工程

    灵活强大的构建系统Gradle

    Gradle Android Could not find method testPackage()

    Android Studio 1.0 Gradle Error with getConfiguration()

    Android打包的那些事

    深入理解Android之Gradle

    gradle build fails on lint task

    “Gradle Version 2.10 is required.” Error

    greenDao

    ORM 框架之 greenDAO 使用心得

    SQLite数据库框架ORMLite与GreenDao的简单比较

    在AndoridStudio中引入GreenDAO

    GridView

    Android入门第八篇之GridView(九宫图)

    用Volley让GridView加载网络图片

    Add space to top and bottom of GridView

    H

    Hotfix

    Android热更新实现原理

    Android App 线上热修复方案

    Nuwa

    Handler

    Handler和他的小伙伴们

    I

    ImageView

    [Android] ImageView.ScaleType设置图解

    Immersive Full-Screen Mode

    Using Immersive Full-Screen Mode译文

    Intent

    Android系列教程之十:Intents and Intent Filters(一)

    Android高手进阶教程(十七)之---Android中Intent传递对象的两种方法(Serializable,Parcelable)!

    Intent filter 关于Action、Category属性详解---附带实例源码

    startActivityForResult用法详解

    Android 开发笔记——通过 Intent 传递类对象

    J

    Java 8

    Modern Java - A Guide to Java 8

    Java8系列 - Java8简明指南

    Json

    Android系列---JSON数据解析

    android json解析及简单例子

    Android开源库--Gson谷歌官方json解析库

    DataContract4A-简化Json解析与生成

    JNI

    Hello JNI

    K

    Kotlin

    Kotlin Programming Language

    Kotlin中文站点

    使用Kotlin进行Android开发

    L

    ListFragment

    Android App组件之ListFragment -- 说明和示例

    Android 使用ListFragment显示列表

    ListView

    在Activity中响应ListView内部按钮的点击事件

    Log

    Logger工具类

    KLog

    M

    MessageDigest

    Java利用MessageDigest获取字符串或文件MD5详解

    类 MessageDigest

    Material Design

    Google Material Design: Everything You Need to Know

    An exploration in Material Design

    谢谷歌大神传我动画设计30年功力

    Codelab for Android Design Support Library used in I/O Rewind Bangkok session

    MVP

    浅谈 MVP in Android

    Android中的MVP

    开源项目Philm的MVP架构分析

    一种在android中实现MVP模式的新思路

    说说Android的MVP模式

    N

    NavigationView

    Easy Navigation Drawer with Design Support Library

    Notification

    Android——Notifications笔记

    Android学习之Notification的简单使用

    O

    ORMLite

    Android 快速开发系列 ORMLite 框架最佳实践

    Android ORM框架之 ORMLite

    OkHttp

    开源项目OkHttpPlus——支持GET、POST、UI线程回调、JSON格式解析、链式调用、文件上传下载

    Android OkHttp完全解析 是时候来了解OkHttp了

    P

    Parcelable

    Android中Parcelable接口用法

    PackageManager

    Android中获取应用程序(包)的信息-----PackageManager的使用(一)

    【Android】获取手机中已安装apk文件信息(PackageInfo、ResolveInfo)(应用图片、应用名、包名等)

    Android获取已安装应用信息(图标,名称,版本号,包)

    关于android 如何安装 assets文件下的apk

    Palette

    Extracting Colors to a Palette with Android Lollipop

    Android Lollipop 新特性 - Palette

    Preference

    PreferenceActivity(首选项设置页)

    Android的设置界面及Preference使用

    Picasso

    Picasso官方网站及javadoc

    Android图片下载缓存库picasso解析

    R

    React Native

    React Native for Android 入门老虎

    React Native For Android初体验

    Reference

    Java的引用StrongReference、 SoftReference、 WeakReference 、PhantomReference

    Java 7之基础 - 强引用、弱引用、软引用、虚引用

    RecyclerView

    RecyclerView使用详解(一)

    Android RecyclerView 使用完全解析 体验艺术般的控件

    A Guide to Android RecyclerView and CardView

    Android-RecyclerView-Item点击事件设置

    Why doesn't RecyclerView have onItemClickListener()? And how RecyclerView is different from Listview?

    Create RecyclerView with multiple view type

    Simple RecyclerView Divider

    Retrofit

    RxJava

    RxJava: Reactive Extensions for the JVM

    给 Android 开发者的 RxJava 详解

    NotRxJava懒人专用指南

    RandomAccessFile

    Java RandomAccessFile用法

    S

    SearchView

    详细解读Android中的搜索框(三)—— SearchView

    Serializable

    Android系统中Parcelable和Serializable的区别

    Android: Difference between Parcelable and Serializable?

    Service

    Android Service完全解析,关于服务你所需知道的一切(上)

    ExecutorService 的理解与使用

    Android基本功:IntentService的使用

    Android基础笔记(十一)- Service基础和注意事项以及Activity与Service的通信

    SharedPreference

    Android SharedPreferences使用以及原理详解

    Google为何这样设计OnSharedPreferenceChangeListener

    SharedPreferences在多进程中的使用及注意事项

    SparseArray

    Android应用性能优化之使用SparseArray替代HashMap

    Android SparseArray

    Android性能优化之使用SparseArray代替HashMap

    HashMap的实现与优化

    SQLite

    Android中SQLite应用详解

    ANDROID开发之SQLite详解

    使用嵌入式关系型SQLite数据库存储数据

    Android将数据库保存到SD卡的实现

    Support Library

    Android Support兼容包详解

    Android各个Support Library介绍

    Android Support Library 23.1的变化

    SwipeRefreshLayout

    Android SwipeRefreshLayout

    下拉刷新之 swipeRefreshLayout

    T

    Textview

    Remove underline from links in TextView

    What is the default text size on Android?

    Which unit of measurement does the Paint.setTextSize(float) use?

    How to set unit for Paint.setTextSize()

    Android Center text on canvas

    TouchEvent

    两分钟彻底让你明白Android中onInterceptTouchEvent与onTouchEvent(图文)!

    MotionEvent事件在onInterceptTouchEvent()、onTouchEvent()中的传递顺序

    Android Deeper(00) - Touch事件分发响应机制

    Thread

    ThreadPoolExecutor运转机制详解

    ThreadPoolExecutor使用和思考(上)-线程池大小设置与BlockingQueue的三种实现区别

    Java并发编程:Callable、Future和FutureTask

    Java 7之多线程线程池 - Callable和Future

    Java 7之多线程线程池 - 线程池原理(1)

    Android线程间交互(Java synchronized & Android Handler)

    Android--多线程之Handler

    Java(Android)中线程池的使用

    Java(Android)线程池

    U

    Unit Test

    Android单元测试

    Don’t Test Blindly: The Right Methods for Unit Testing Your Java Apps

    在Android Studio中进行单元测试和UI测试

    V

    ViewPager

    Android ViewPager使用详解

    ViewPager + Fragment实现滑动标签页

    【移动开发】Android中Fragment+ViewPager的配合使用

    Android 手把手教您自定义ViewGroup(一)本文出自:【张鸿洋的博客】

    Android的坑之ScrollView嵌套ViewPager

    View

    Android LayoutInflater原理分析,带你一步步深入了解View(一)

    Android中View绘制流程以及invalidate()等相关方法分析

    Android中measure过程、WRAP_CONTENT详解以及xml布局文件解析流程浅析(上)

    Android开发:LayoutParams的用法

    Saving Android View state correctly

    ViewFlipper

    Android ViewFlipper的使用分析

    Android 滑动效果入门篇(一)—— ViewFlipper

    VideoView

    Android--使用VideoView播放视频

    Playing a video in VideoView in Android

    Position Video Inside a VideoView

    Volley

    Android Volley

    Android Volley完全解析(一),初识Volley的基本用法

    Android库Volley的使用介绍

    网络请求库Volley详解

    Volley 源码解析

    使用okHttp、Volley、Gson快速组装HttpClinet

    W

    WebView

    WebView详解

    Java 与 JavaScript 如何进行交互

    Android与js交互实例

    Android中Java和JavaScript交互

    顶部带进度条的Webview

    Android WebView播放视频问题

    理解WebKit和Chromium: Android 4.4 上的Chromium WebView

    在WebView中如何让JS与Java安全地互相调用

    Android WebView的Js对象注入漏洞解决方案

    Others

    Code Style

    Java编程规范

    Android 命名规范 (提高代码可以读性)

    Code Style Guidelines for Contributors

    Git

    Pro Git

    GitHub秘籍

    git - 简易指南

    基于Github参与开源项目指南

    使用git和github进行协同开发流程

    如何高效利用GitHub

    廖雪峰的GIT入门教程

    GitHub&Git入门基础

    git-flow 备忘清单

    JCenter

    Android Studio发布项目到Jcenter

    将Library上传到Jcenter

    使用Gradle发布aar项目到JCenter仓库

    反编译

    android_smali语法学习

    apk的包名修改

    为Sublime Text安装smali代码语法高亮插件

    Android APK反编译详解(附图)

    Android开发学习总结(六)—— APK反编译

    我是如何使用Android反编译软件的?

    Android程序的反编译对抗研究

    设计模式

    Java开发中的23种设计模式详解

    MVC,MVP 和 MVVM 的图示

    如果让我重新设计一款Android App

    一个人如何开发一款 App?

    Android应用架构 (Android Dev Summit 2015)

    Android源码设计模式分析项目

    夜间模式

    Android Night Mode 夜间模式实现

    Android夜间模式实现

    Android 中 知乎日报和知乎设置夜间模式是怎么样做到不重启Activity的?

    自定义控件

    Android 自定义View及其在布局文件中的使用示例

    自定义控件进阶:declare-styleable重用attr

    android 自定义控件 使用declare-styleable进行配置属性(源码角度)

    Android使用AttributeSet自定义控件的方法

    从源码中浅析Android中如何利用attrs和styles定义控件

    Android SDK: Creating Custom Views

    Creating custom and compound Views in Android - Tutorial

    Tutorial: Enhancing Android UI with Custom Views

    Android 自定义View (一)

    What does postInvalidate() do?

    When it's necessary to execute invalidate() on a View?

    Android笔记:invalidate()和postInvalidate() 的区别及使用

    No category

    THE DEX 64K LIMIT IS NOT A PROBLEM ANYMORE, ALMOST

    Android 4.4从图库选择图片,获取图片路径并裁剪

    浅析android应用增量升级

    Android四大基本组件介绍与生命周期

    Android代码优化——使用Android lint工具

    Android 插件化 动态升级

    Java String StringBuilder StringBuffer

    tools:context=".MainActivity的作用

    关于APK瘦身值得分享的一些经验

    性能优化之数据库优化

    How to check visibility of software keyboard in Android?

    android 4.4.4侧滑退出显示app启动界面

    How to get a Color from hexadecimal Color String

    【译】Android应用架构

    Android静默安装实现方案,仿360手机助手秒装和智能安装功能

    How to convert a color integer to a hex String in Android?

    IllegalArgumentException: width and height must be > 0 while loading Bitmap from View

    Unable to instantiate application com.android.tools.fd.runtime.BootstrapApplication ?

    相关文章

      网友评论

      • 90ee09adad98:虽然 内容很全,但是很多都是过时的内容,而且有的链接已经失效。

      本文标题:Android 开发从入门到精通-学习文档

      本文链接:https://www.haomeiwen.com/subject/ipfhattx.html