-
Android 开发者(Android Developer)
太阳火神的美丽人生 (http://blog.csdn.net/opengl_es)
本文遵循“署名-非商业用途-保持一致”创作公用协议
- Android 开发者(Android Developer)官方网站在 2012年早些时侯进行了全面升级,以配合 Android 4.1 的发布。
- 该版本的发布标志着谷歌在 Android 系统上开始重视提供良好的用户体现,对界面的设计、布局给出了设计指导。
- 新版官网开发者网站包含三部分内容:设计(Design)、开发(Develop)、发布(Distribute)。
- 设计 Design
-
起步 Get Started
- 视觉创新 Creative Vision
- 设计准则 Design Principles
- 用户界面预览 UI Overview
-
风格 Style
- 设备和显示屏 Devices and Displays
- 主题 Themes
- 触控反馈 Touch Feedback
- 度量和网格 Metrics and Grids
- 排版 Typography
- 颜色 Color
- 插图 Iconography
- 书写风格 Writing Style
- 样式 Patterns
- Android 上的新样式 New in Android
- 手势 Gestures
- 应用结构 App Structure
- 导航 Navigation
- 工具栏 Action Bar
- 多面板布局 Multi-pane Layouts
- 扫动视图 Swipe Views
- 选择 Selection
- 确认&承认 Confirming & Acknowledging
- 通知 Notifications
- 窗口部件 Widgets
- 设置 Settings
- 帮助 Help
- 兼容性 Compatibility
- 易用性 Accessibility
- 纯粹的安卓 Pure Android
- 构建块 Building Blocks
- 标签 Tabs
- 列表 Lists
- 网格列表 Grid Lists
- 滑动 Scrolling
- 下拉列表 Spinners
- 按钮 Buttons
- 文本域 Text Fields
- 搜索条 Seek Bars
- 进度&活动指示 Progress & Activity
- 切换开关 Switches
- 对话框 Dialogs
- 选取器 Pickers
- 下载 Downloads
- 模板和来源 Stencils and Sources
- 工具栏图标包 Action Bar Icon Pack
- 风格 Style
- 颜色 Color
- 视频 Videos
- Android Design for Success
- Android Design for Engineers
- Navigation in Android
- So You've Read the Design Guide; Now What?
- Playing with Patterns
- Android Design for Success
-
起步 Get Started
- 开发 Develop
- 设计 Design
-
- 培训 Training
-
起步 Get
Started
- 构建你的第一个应用 Building Your First App
- 创建一个 Android 项目 Creating an Android Project
- 运行你的 Android 项目 Running Your Application
- 构建一个简单的用户界面 Building a Simple User Interface
- 启动另一个活动组件 Starting Another Activity
- 管理活动组件的生命周期 Managing the Activity Lifecycle
- 启动一个活动组件 Starting an Activity
- 暂停和恢复运行一个活动组件 Pausing and Resuming an Activity
- 停止和重启一个活动组件 Stopping and Restarting an Activity
- 重新创建一个活动组件 Recreating an Activity
- 支持不同的设备 Supporting Different Devices
- 支持不同的语言 Supporting Different Languages
- 支持不同的屏幕 Supporting Different Screens
- 支持不同的平台版本 Supporting Different Platform Versions
- 使用碎片组件(Fragment)构建一个动态的用户界面 Building
a Dynamic UI with Fragments
- 使用支持库 Using the Support Library
- 创建一个碎片组件(Fragment) Creating a Fragment
- 构建灵活的用户界面 Building a Flexible UI
- 与其它碎片组件(Fragment)通讯 Communicating with Other Fragments
- 保存数据 Saving Data
- 保存键值集合 Saving Key-Value Sets
- 保存文件 Saving Files
- 在 SQL 数据库中保存数据 Saving Data in SQL Databases
- 与其它应用交互 Interacting with Other Apps
- 把用户带到另一个应用 Sending the User to Another App
- 从活动(Activity)获取结果 Getting a Result from the Activity
- 允许其它应用启动你的活动(Activity) Allowing Other Apps to Start Your Activity
- 构建你的第一个应用 Building Your First App
-
高级培训 Advanced
Training
- 使你的应用对位置敏感 Making Your App Location Aware
- 使用位置管理器 Using the Location Manager
- 获取当前位置 Obtaining the Current Location
- 获取当前位置的地址 Displaying a Location Address
- 执行网络操作 Performing Network Operations
- 连接到网络 Connecting to the Network
- 管理网络使用 Managing Network Usage
- 解析 XML 数据 Parsing XML Data
- 低功耗传输数据 Transferring Data Without Draining the Battery
- 为有效地网络访问优化下载 Optimizing Downloads for Efficient Network Access
- 最小化定期更新的影响 Minimizing the Effect of Regular Updates
- 冗长的下载是多余的 Redundant Downloads are Redundant
- 基于连接类型修改样式 Modifying Patterns Based on the Connectivity Type
- 云同步 Syncing to the Cloud
- 使用备份 API Using the Backup API
- 处理大部分谷歌云消息 Making the Most of Google Cloud Messaging
- 针对多种屏幕设计 Designing for Multiple Screens
- 为多种屏幕设计 Designing for Multiple Screens
- 支持不同的屏幕密度 Supporting Different Screen Densities
- 实现自适应的用户界面流 Implementing Adaptive UI Flows
- 改善布局的性能 Improving Layout Performance
- 优化布局结构 Optimizing Layout Hierarchies
- 通过 <include/> 重用布局 Re-using Layouts with <include/>
- 按需加载视图 Loading Views On Demand
- 使列表视图滚动得更顺畅 Making ListView Scrolling Smooth
- 添加动画效果 Adding Animations
- 交叉渐变两个视图 Crossfading Two Views
- 使用 ViewPager 实现屏幕滑动 Using ViewPager for Screen Slide
- 显示卡片翻转动画 Displaying Card Flip Animations
- 缩放视图 Zooming a View
- 带有动画效果的布局变化 Animating Layout Changes
- 管理音频回放 Managing Audio Playback
- 控制你的应用的音量和回放 Controlling Your App‘s Volume and Playback
- 管理音频焦点 Managing Audio Focus
- 处理音频输出硬件 Dealing with Audio Output Hardware
- 优化电池寿命 Optimizing Battery Life
- 监视电池电量及充电状态以及变化 Monitoring the Battery Level and Charging State
- 确定插座状态和类型并监视变化 Determining and Monitoring the Docking State and Type
- 确定连通状态并监视变化 Determining and Monitoring the Connectivity Status
- 按需处理广播接收者 Manipulating Broadcast Receivers On Demand
- 创建自定义视图 Creating Custom Views
- 创建一个自定义的视图类 Creating a Custom View Class
- 实现自定义绘图 Implementing Custom Drawing
- 使视图处于交互模式 Making the View Interactive
- 优化视图 Optimizing the View
- 添加搜索功能 Adding Search Functionality
- 设置搜索界面 Setting up the Search Interface
- 排序和查询数据 Storing and Searching for Data
- 保持向后兼容 Remaining Backward Compatible
- 记住用户 Remembering Users
- 记住你的用户 Remembering Your User
- 向 OAuth2 服务发起认证 Authenticating to OAuth2 Services
- 创建自定义的帐户类型 Creating a Custom Account Type
- 共享内容 Sharing Content
- 向其它应用发送内容 Sending Content to Other Apps
- 从其它应用接收内容 Receiving Content from Other Apps
- 添加一个容易的共享动作 Adding an Easy Share Action
- 拍照 Capturing Photos
- 简单地拍照 Taking Photos Simply
- 简单地录像 Recording Videos Simply
- 控制像机 Controlling the Camera
- 维护多个 APK Maintaining Multiple APKs
- 为不同的 API 等级创建多个 APK Creating Multiple APKs for Different API Levels
- 为不同的屏幕尺寸创建多个 APK Creating Multiple APKs for Different Screen Sizes
- 为不同的 GL 纹理创建多个 APK Creating Multiple APKs for Different GL Textures
- 使用两种以上的 Dimensions 创建多个 APK Creating Multiple APKs with 2+ Dimensions
- 创建向后兼容的用户界面 Creating Backward-Compatible UIs
- 提取新的 API Abstracting the New APIs
- 代理新的 API Proxying to the New APIs
- 使用原有的 API 创建一份实现 Creating an Implementation with Older APIs
- 使用版本敏感组件 Using the Version-Aware Component
- 企业开发 Developing for Enterprise
- 使用设备管理机制加强安全性 Enhancing Security with Device Management Policies
- 把你的应用变成钱 Monetizing Your App
- 无损用户体验地做广告 Advertising without Compromising User Experience
- 设计有效的导航 Designing Effective Navigation
- 规划多屏界面及它们的关系 Planning Screens and Their Relationships
- 为多种触屏尺寸做规划 Planning for Multiple Touchscreen Sizes
- 提供向下及横屏导航 Providing Descendant and Lateral Navigation
- 提供向上及缓存导航 Providing Ancestral and Temporal Navigation
- 把所有的内容放在一起:架构一个示例应用 Putting it All Together: Wireframing the Example App
- 实现有效的导航 Implementing Effective Navigation
- Implementing Lateral Navigation
- Implementing Ancestral Navigation
- Implementing Temporal Navigation
- Implementing Descendant Navigation
- 针对智能电视的设计 Designing for TV
- 为智能电视优化布局 Optimizing Layouts for TV
- 为智能电视优化导航 Optimizing Navigation for TV
- 处理电视上不支持的特性 Handling Features Not Supported on TV
- 高效地显示位图 Displaying Bitmaps Efficiently
- 高效地加载大位图 Loading Large Bitmaps Efficiently
- 在 UI 线程之外处理位图 Processing Bitmaps Off the UI Thread
- 缓存位图 Caching Bitmaps
- 在你的用户界面中显示位图 Displaying Bitmaps in Your UI
- 实现易用性 Implementing Accessibility
- 开发易于使用的应用 Developing Accessible Applications
- 开发易于使用的服务 Developing Accessibility Services
- 使用OpenGL ES 显示图形 Displaying Graphics with OpenGL ES
- 构建 OpenGL ES 环境 Building an OpenGL ES Environment
- 定义形状 Defining Shapes
- 缓制形状 Drawing Shapes
- 应用投影和像机视图 Applying Projection and Camera Views
- 添加动画 Adding Motion
- 响应触控事件 Responding to Touch Events
- 无线连接设备 Connecting Devices Wirelessly
- 使用网络服务搜索器 Using Network Service Discovery
- 使用 Wi-Fi 直连进行连接 Connecting with Wi-Fi Direct
- 把 Wi-Fi 直连用作服务搜索器 Using Wi-Fi Direct for Service Discovery
- 后台加载数据 Loading Data in the Background
- 设置加载器(Loader) Setting Up the Loader
- 定义并启动查询 Defining and Launching the Query
- 处理结果 Handling the Results
- 使你的应用对位置敏感 Making Your App Location Aware
-
起步 Get
Started
- API 指南 API Guides
- 应用组件 App Components
- 应用基础 App Fundamentals
- 活动 Activities
- 碎片 Fragments
- 加载器 Loaders
- 任务和返回堆栈 Tasks and Back Stack
- 服务 Services
- 绑定服务 Bound Services
- Android 接口描述语言 AIDL
- 内容提供者 Content Providers
- 内容提供者基础 Content Provider Basics
- 创建内容提供者 Creating a Content Provider
- 日历提供者 Calendar Provider
- 联系人提供者 Contacts Provider
- 进程和线程 Processes and Threads
- 权限 Permissions
- 应用窗口小部件 App Widgets
- Android 清单文件 Android Manifest
- <action> 动作
- <activity> 活动
- <activity-alias> 活动别名
- <application> 应用
- <category> 分类
- <compatible-screens> 兼容屏幕
- <data> 数据
- <grant-uri-permission> 授予uri权限
- <instrumentation>
- <intent-filter> 意向过滤器
- <manifest> 清单
- <meta-data> 元数据
- <path-permission> 路径权限
- <permission> 权限
- <permission-group> 权限组
- <permission-tree> 权限树
- <provider> 提供者
- <receiver> 接收者
- <service> 服务
- <supports-gl-texture> 支持的gl纹理
- <supports-screens> 支持的屏幕
- <uses-configuration> 用户配置
- <uses-feature> 使用的特性
- <uses-library> 使用的库
- <uses-permission> 用户权限
- <uses-sdk> 使用的sdk
- 用户界面 User Interface
- 概览 Overview
- 布局 Layouts
- 线性布局 Linear Layout
- 相对布局 Relative Layout
- 列表视图 List View
- 网络视图 Grid View
- 输入控制 Input Controls
- 按钮Buttons
- 文本域 Text Fields
- 复选框 Checkboxes
- 单选按钮 Radio Buttons
- 按压开关按钮 Toggle Buttons
- 下拉列表 Spinners
- 选择器 Pickers
- 按钮Buttons
- 输入事件 Input Events
- 菜单 Menus
- 工具栏 Action Bar
- 设置 Settings
- 对话框 Dialogs
- 通知 Notifications
- 提醒 Toasts
- 搜索 Search
- 创建一个搜界面 Creating a Search Interface
- 添加最近查询建议 Adding Recent Query Suggestions
- 添加自定义建议 Adding Custom Suggestions
- 搜索配置 Searchable Configuration
- 创建一个搜界面 Creating a Search Interface
- 拖放 Drag and Drop
- 易用性 Accessibility
- 使应用易于使用 Making Applications Accessible
-
可访问性检查列表 Accessibility Developer Checklist
- 构建可访问性服务 Building Accessibility Services
- 使应用易于使用 Making Applications Accessible
- 风格和主题 Styles and Themes
- 自定义组件 Custom Components
- 应用资源 App Resources
- 概览 Overview
- 提供资源 Providing Resources
- 访问资源 Accessing Resources
- 处理运行时变化 Handling Runtime Changes
- 本地化 Localization
- 资源类型 Resource Types
- 动画 Animation
- 颜色状态列表 Color State List
- 图片对象 Drawable
- 布局 Layout
- 菜单 Menu
- 字符串 String
- 风格 Style
- 更多类型的资源 More Types
- 动画 Animation
- 概览 Overview
- 动画和图形 Animation and Graphics
- 概览 Overview
- 属性动画 Property Animation
- 视图动画 View Animation
- 图片对象动画 Drawable Animation
- 画布和图片对象 Canvas and Drawables
- OpenGL三维 OpenGL
- 硬件加速 Hardware Acceleration
- 概览 Overview
- 计算 Computation
- 渲染脚本 Renderscript
- 高级的渲染脚本 Advanced Renderscript
- 运行时 API 参考手册 Runtime API Reference
- 渲染脚本 Renderscript
- 媒体和像机 Media and Camera
- 媒体回放 Media Playback
- 支持的媒体格式 Supported Media Formats
- 音频采集 Audio Capture
- 射流音频 JetPlayer
- 像机 Camera
- 媒体回放 Media Playback
- 位置和传感器 Location and Sensors
- 位置与地图 Location and Maps
- 位置策略 Location Strategies
- 传感器概览 Sensors Overview
- 运动传感器 Motion Sensors
- 位置传感器 Position Sensors
- 环境传感器 Environment Sensors
- 位置与地图 Location and Maps
- 互通性 Connectivity
- 蓝牙 Bluetooth
- 近场通讯 NFC
-
近场通讯基础 NFC Basics
- 高级近场通讯 Advanced NFC
-
近场通讯基础 NFC Basics
-
Wi-Fi 直连 Wi-Fi Direct
- 通用串行总线 USB
- 设备 Accessory
- 主机 Host
- 设备 Accessory
-
会话发起协议(Session Initiation Protocol) SIP
- 蓝牙 Bluetooth
- 文本和输入 Text and Input
- 复制和粘贴 Copy and Paste
- 创建输入法编辑器(Input Method Editor) Creating an IME
- 拼写检查器 Spelling Checker
- 复制和粘贴 Copy and Paste
- 数据存储 Data Storage
- 存储选项 Storage Options
- 数据备份 Data Backup
- 应用安装位置 App Install Location
- 管理 Administration
- 设备策略 Device Policies
- 设备策略 Device Policies
- 网页应用 Web Apps
- 概览 Overview
- 网页应用适配屏幕Targeting Screens from Web Apps
- WebView 中构建网页应用 Building Web Apps in WebView
- 调试网页应用 Debugging Web Apps
- 网页应用的最佳实践 Best Practices for Web Apps
- 概览 Overview
- 最佳实践 Best Practices
- 兼容性 Compatibility
- 支持多种屏幕 Supporting Multiple Screens
- 针对特定屏幕发布 Distributing to Specific Screens
- 屏幕兼容模式 Screen Compatibility Mode
- 针对特定屏幕发布 Distributing to Specific Screens
- 支持平板和手机 Supporting Tablets and Handsets
- 为性能设计 Designing for Performance
-
本地接口(Java Native Interface)技巧 JNI Tips
-
本地接口(Java Native Interface)技巧 JNI Tips
- 为响应性设计 Designing for Responsiveness
- 为无缝体验设计 Designing for Seamlessness
- 为安全性设计 Designing for Security
- 兼容性 Compatibility
- 谷歌服务 Google Services
- 应用内购买 In-app Billing
- 应用许可 Application Licensing
- 谷歌商店服务 Google Play Services
- 谷歌商店应用过滤器 Filters on Google Play
- 多 APK 支持 Multiple APK Support
- APK 扩容文件 APK Expansion Files
- 谷歌云消息 Google Cloud Messaging
- 应用组件 App Components
- 参考手册 Reference
- 工具 Tools
- 获取 SDK Get the SDK
- 培训 Training
-
- 发布 Distribute
- 谷歌应用商店 Google Play
- 应用发布 Publishing
- 应用推广 Promoting
- 应用质量 App Quality
- 焦点 Spotlight
- 公开发行 Open Distribution
- 发布 Distribute