Building Apps with Content緩存
Sharing Simple Data --> Intent && ActionProvider 介紹如何讓應用程序共享簡單的數據,如:文本/URI/圖片等網絡
1. Sending Simple Data to Other Appsless
2. Receiving Simple Data from Other Appside
3. Adding an Easy Share Action動畫
Sharing Files 介紹Android中的分享文件ui
1. Setting Up File Sharingspa
2. Sharing a File.net
3. Requesting a Shared File線程
4. Retrieving File Information設計
Sharing Files with NFC 使用NFC(Near Field Communication 無線傳輸)共享文件
1. Sending Files to Another Device
2. Receiving Files from Another Device
Building Apps with Multimedia
Managing Audio Playback 音視頻輸出硬件/管理音頻播放
1. Controlling Your App's Volume and Playback 控制App的音量和播放
2. Managing Audio Focus 控制音頻焦點
3. Dealing with Audio Output Hardware 處理音頻輸出設備
Capturing Photos 控制相機/捕獲圖片
1. Taking Photos Simply 捕獲圖片
2. Recording Videos Simply 記錄視頻
3. Controlling the Camera 控制相機
Printing Content 打印任務/經過打印輸出App內容
1. Photos 輸出圖片
2. HTML Documents 打印輸出HTML文檔
3. Custom Documents 打印輸出自定義文檔
Building Apps with Graphics & Animation
Displaying Bitmaps Efficiently1. Loading Large Bitmaps Efficiently 高效載入大圖
2. Processing Bitmaps Off the UI Thread 在子線程處理圖片
3. Caching Bitmaps 緩存圖片
4. Managing Bitmap Memory 管理圖片內存
5. Displaying Bitmaps in Your UI 在UI線程(主線程)顯示圖片
Displaying Graphics with OpenGL ES 使用OpenGL ES展現圖形
1. Building an OpenGL ES Environment 構建OpenGL ES環境
2. Defining Shapes 定義形狀
3. Drawing Shapes 繪製形狀
4. Applying Projection an Camera Views
5. Adding Motion
6. Responding to Touch Events 響應觸摸事件
Adding Animations
1. Crossfading Two Views 交替變換兩個View
2. Using ViewPager for Screen Slide 使用ViewPager作出屏幕滑動效果
3. Displaying Card Flip Animations 展現卡片滑動動畫
4. Zooming a View 縮放View
5. Animating Layout Changes
參考:http://blog.csdn.net/chivalrousman/article/details/52003583
Building Apps with Connectivity & the Cloud
Connecting Devices Wirelessly
1. Using Network Services Discovery 發現網絡服務
2. Creating P2P Connections with Wi-Fi 使用WIFI建立P2P鏈接
3. Using Wi-Fi P2P for Service Discovery 使用WIFI-P2P服務
Performing Network Operations
1. Connecting to the Network 鏈接網絡
2. Managing Network Usage 管理網絡鏈接
3. Parsing XML Data 解析XML數據
Transferring Data Without Draining(耗盡) the Battery
1. Optimizing Downloads for Efficient Network Access
2. Minimizing the Effect of Regular Updates
3. Redundant Downloads are Redundant
4. Modifying Patterns Based on the Connectivity Type
Syncing to the Cloud
1. Using the Backup API
2. Making the Most of Google Cloud Messaging
Resolving Cloud Save Conflicts
Transferring Data Using Sync Adapters
1. Creating a Stub Authenticator
2. Creating a Stub Content Provider
3. Creating a Sync Adapter
4. Running a Sync Adapter
Transmitting Network Data Using Volley 使用Volley執行網絡任務
1. Sending a Simple Request
2. Setting Up a RequestQueue
3. Making a Standard Request
4. Implementing a Custom Request
參考:http://blog.csdn.net/chivalrousman/article/details/51975583
Building Apps with User Info & Location
Accessing Contacts Data 獲取手機聯繫人信息
1. Retrieving a List of Contacts
2. Retrieving Details for a Contact
3. Modifying Contacts Using Intents
4. Displaying the Quick Contact Badge
Making Your App Location-Aware 解析設備的位置信息
1. Retrieving the Current Location
2. Receiving Location Updates
3. Displaying a Location Address
4. Creating and Monitoring Geofences
5. Recognizing the User's Current Activity
6. Testing Using Mock Locations
Best Practices for Interaction & Engagement 人機交互實踐
Designing Effective Navigation
1. Planning Screens and Their RelationShips
2. Planning for Multiple Touchscreen Sizes
3. Providing Descendant and Lateral Navigation
4. Providing Ancestral and Temporal Navigation
5. Putting it All Together: Wireframing the Example App
Implementing Effective Navigation
1. Creating Swipe Views with Tabs
2. Creating a Navigation Drawer
3. Providing Up Navigation
4. Providing Proper Back Navigation
5. Implementing Descendant Navigation
Notifying the User
1. Building a Notification
2. Preserving Navigation when Starting an Activity
3. Updating Notifications
4. Using Big View Styles
5. Displaying Progress in a Notification
Adding Search Functionality
1. Setting up the Search Interface
2. Storing and Searching for Data
3. Remaining Backward Compatible
Making Your App Content Searchable by Google
1. Enabling Deep Links for App Content
2. Specifying App Content for Indexing
Best Practices for User Interface 用戶界面設計
Designing for Multiple Screens
1. Supporting Different Screen Sizes
2. Supporting Different Densities
3. Implementing Adaptive UI Flows
Creating Custom Views
1. Creating a Custom View Class
2. Implementing Custom Drawing
3. Making the View Interactive
4. Optimizing the View
Creating Backward-Compatible UIs
1. Abstracting the New APIs
2. Proxying to the New APIs
3. Creating an Implementation with Older APIs
4. Using the Version-Aware Component
Implementing Accessibility
1. Developing Accessible Applications
2. Developing Accessibility Services
Managing the System UI
1. Dimming the System Bars
2. Hiding the Status Bar
3. Hiding the Navigation Bar
4. Using Immersive Full-Screen Mode
5. Responding to UI Visibility Changes
Best Practices for User Input
Using Touch Gestures
1. Detecting Common Gesture
2. Tracking Movement
3. Animating a Scroll Gesture
4. Handling Multi-Touch Gestures
5. Dragging and Scaling
6. Managing Touch Events in a ViewGroup
Handling Keyboard Input
1. Specifying the Input Method Type
2. Handling Input Method Visibility
3. Supporting Keyboard Navigation
4. Handling Keyboard Actions
Supporting Game Controllers
1. Handling Controller Actions
2. Supporting Controllers Across Android Versions
3. Supporting Multiple Game Controllers
Best Practices for Background Jobs
Runnning in a Background Service
1. Creating a Background Service
2. Sending Work Requests to the Background Service
3. Reporting Work Status
Loading Data in the Background
1. Running a Query with a CursorLoader
2. Handling the Results
Managing Device Awake State
1. Keeping the Device Awake
2. Scheduling Repeating Alarms
Best Practices for Background Jobs
Managing Your App's Memory
Performance Tips
Improving Layout Performance
1. Optimizing Layout Hierarchies
2. Re-using Layouts with <include/>
3. Loading Views On Demand
4. Making ListView Scrolling Smooth
Sending Operations to Multiple Threads
1. Specifying the Code to Run on a Thread
2. Creating a Manager for Multiple Threads
3. Running Code on a Thread Pool Thread
4. Communicating with the UI Thread
Keeping Your App Responsive
JNI Tips
SMP Primer for Android
Best Practices for Security & Privacy
Security Tips
Security with HTTPS and SSL
Updating Your Security Provider to Protect Against SSL Exploits
Developing for Enterprise
Best Practices for Testing
Testing Your Activity
Setting Up Your Test Environment
Creating and Running a Test Case
Testing UI Components
Creating Unit Tests
Creating Functional Tests