Android Programming Journey
Intro
Introduction
Core Android
Activities
What is the difference between a fragment and an activity?
What is the Don’t Keep Activities developer option and why is it useful?
What are “launch modes”?
通过 PreferenceFragmentCompat 构建 preference settings 的方法
如何使用Android UI Fragment开发“列表-详情”界面?
如何更新及替换ViewPager中的Fragment?
Fragment子类必须包含一个public无参构造器
如何获取FragmentTabHost中指定标签页的Fragment?
「译」向Big Nerd Ranch提问:为什么Fragment在Android App开发中非常重要?
Android Jetpack: how to smartly use Fragments in your UI (Google I/O '18)
Animations & Transitions
ViewPager 切换视差效果 Parallax Effect
使用SDK定义的系统默认动画时间参数
Change all the activity transitions at once in Android App
Ripple effect for ImageView in RecyclerView
如何学习 Android Animation?
从 Android Sample ApiDemos 中学习 android.animation API 的用法
「译」Android Animation in Honeycomb by Chet Haase(Android 3.0系统中的动画机制)
Android Animation Interpolator - Android 动画插值器源码笔记
「译」Android ViewPropertyAnimator 介绍
App Data & Files
What is an Cursor?
What is a ContentProvider and what is it typically used for?
Repository : mediators between different data sources (persistent model, web service, cache)
LiveData : way to inform UI
Room: provides an abstraction layer over SQLite to allow fluent database access while harnessing the full power of SQLite.
List-Detail 案例中对 DAO 和 Repository 的优化
Cloud Storage for Firebase
View the shared preferences file using Android Studio
Json Tutorial
Storage Tutorial
Architecture
Guide to App Architecture
Event sourcing, CQRS, stream processing and Apache Kafka: What’s the connection?
ViewModel: store and manage UI-related data in a lifecycle conscious way
Guava: Google Core Libraries for Java
Github Browser Sample with Android Architecture Components
MVP Learning Note
MVP: Follow the naming convention used in Google's sample
MVVM Learning Note
Dagger2 Learning Note
Dagger2: @Qualifier is used to distinguish between objects of the same type but with different instances
Dagger2: @Module为第三方库的构造函数提供注解
Dagger2: @Inject 和 @Component 用法
Why Dagger2 inject the same object but with 2 different instances?
The conception of Dependency Injection(DI)
常见的三种依赖注入的方式:构造注入、接口注入、注解注入
MVVM Learning Note
Android Jetpack: what's new in Architecture Components (Google I/O '18)
Background Tasks
Android Servcie笔记
Android Message Handler消息处理机制总结笔记
What is the difference between Service and IntentService? How is each used?
What's handler?
What's HandlerThread?
Creating a Manager for Multiple Threads
Communicating with the UI Thread
Specifying the Code to Run on a Thread
What is the relationship between the life cycle of an AsyncTask and an Activity?
If Service accesses process some long-running options. what issue might you encounter and how could you address it?
How to process concurrent?
Difference between Android Service,Thread,IntentService and AsyncTask
What's AsyncTask? What's the difference between Thread and AsyncTask?
How to stop a task that is running?
Firebase JobDispatcher
Pauses the current thread for the specified number of seconds
Notification Tutorial
Network
Retrofit Tutorial
Picasso Tutorial
Android Socket Programming
How would you cache numerous large images from the net?
How do push notifications work? What is the basic concept behind them?
HTTP Status Codes
Rx
UI & Navigation
Supporting Multiple Screens
Create Custom View
Improve View layout performance
Support both landscape & portrait orientation for both phone & tablet?
ViewHolder pattern
In order for the Android system to restore the state of the views in your activity, each view must have a unique ID
What are Adapters and when and how are they used?
事件分发机制一些问题TODO
Smart UI Dimensions for any Screen Size
Layout: icon & title align vertically
Layout: 用 Button 实现 Image & Text 的上下组合,点击时才会有整体的 ripple 水纹效果
ViewStub允许在运行时填充布局资源文件
实现 Android 文本链接的 4 种方法
Clear UI Thread queue
Scroll to bottom of RecyclerView programmatically?
Get a context in a recycler view adapter
ImageView scaleType
Material Design for Android
Android New Navigation Framework
BLOG
从远程FTP服务器下载文件到本地
第一次开发iOS App和Android的对比总结笔记
Activity - Android编程权威指南笔记
Fragment - Android编程权威指南笔记
Android布局和组件 - Android编程权威指南笔记
SDK版本与兼容 - Android编程权威指南笔记
使用ListFragment显示列表 - Android编程权威指南笔记
Android应用本地化 - Android编程权威指南笔记
为Ubuntu14.04部署Android App的Eclipse开发环境
一个Android音频文本同步的英文有声读物App的开发过程
如何使用Android UI Fragment开发“列表-详情”界面?
如何更新及替换ViewPager中的Fragment?
Fragment子类必须包含一个public无参构造器
如何获取FragmentTabHost中指定标签页的Fragment?
Android Message Handler消息处理机制总结笔记
如何在Android设备旋转时暂存数据以保护当前的交互状态?
Android Servcie笔记
分类整理我在SegmentFault的回答
「译」向Big Nerd Ranch提问:为什么Fragment在Android App开发中非常重要?
如何实现 Android ListView「上拉加载更多」?
如何学习 Android Animation?
从 Android Sample ApiDemos 中学习 android.animation API 的用法
「译」Android Animation in Honeycomb by Chet Haase(Android 3.0系统中的动画机制)
Android Animation Interpolator - Android 动画插值器源码笔记
「译」Android ViewPropertyAnimator 介绍
使用 SpannableString 格式化字符串,实现前景色、下划线、超链接、图文混排等
如何在 Android Studio 中包含 *.so library,并使用库中定义的方法?
Make a Reusable UI in Android App Development
Supporting Multiple Screens
Android Socket Programming
Android FAQ
Add extended data to the intent
Why can't just pass the object without Intent?
Why should I use Bundle if I can pass values to new Activity by putting it directly to Intent extras?
What is a “bundle” in an Android application?
What is the difference between Bundle Vs java.util collections like HashMap?
What is memory leak and how to avoid it?
What is View Group in Android?
What is AndroidManifest.xml used for?
How can two distinct Android apps interact?
What is NDK?
What is an ANR? What causes them and how can they be avoided?
What is an Intent? Describe three common use cases for using an Intent.
What is the difference between Serializable and Parcelable ? Which is best approach in Android?
Under what condition could the code sample below crash your application? How would you modify the code to avoid this potential problem?
Improve Your Code with Lint
The Vital Guide to Android Interviewing
15 Essential Android Interview Questions
Interview Question of W Company
Name some exceptions in android?
Core Language
Java FAQ
What is the difference between method overloading and overriding?
What are the main 3 Object Oriented Programing (OOP) concepts?
What is the difference between procedural and object oriented programming?
Does the finally block gets executed if we insert a return statement inside the try block of a try-catch-finally?
What is the difference between Array and ArrayList in Java?
What is a singleton class and how to create one in Java?
What is anonymous class?
What is object serialization and how to implement it?
What is the difference between abstract class and interface? When to use what?
How do you properly override the equals() method?
What is the difference between final, finally and finalize?
Kotlin
Migrate from Java to Kotlin
Migrate Activity from Java to Kotlin
Migrate Fragment from Java to Kotlin
Migrate RecyclerView.ViewHolder from Java to Kotlin
Migrate RecyclerView.Adapter from Java to Kotlin
Migrate Application from Java to Kotlin
Migrate ViewModel from Java to Kotlin
Migrate model from Java class to Kotlin data class
Migrate Web Service API from Java to Kotlin
Migrate JsonDeserializer from Java to Kotlin
Migrate db class from Java to Kotlin
Null Safety
Static Functions
DI
Mobile Platforms
Google Maps
Associate data with a marker
Design & Dev Tools
Desgin
透过Booking.com看产品差距
Tools
Markdown Tables Generator Online
APK Decompile Tool
Tamper Chrome is a Chrome extension that allows you to modify HTTP requests
Git and Jira workflow
Agile Project Management: How agile methodologies can work for your software team?
GitHub Workflow
Git Commands
Genymotion - virtualization engine not found plugin loading aborted
Chrome inspect devices
Tags
Powered by
GitBook
How can two distinct Android apps interact?
How can two distinct Android apps interact?
android-faq
Bind Service (Messenger, AIDL);
Content Provider;
Broadcast;
Implicit intent;
每一项都有进一步阐述的空间。