注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer.android.com/training/basics/supporting-devices/screens.html Android通过两种参数来对屏幕进行分类:屏幕尺寸和分辨率.在开发时,应该将这两个因素同时考虑进去,所以你应该将项目包含一些可选择的资源文件,使得你的应用在不同的屏幕尺寸和分辨…
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer.android.com/training/basics/supporting-devices/index.html 全世界,Android设备有着各种各样的形状和尺寸.由于具有非常广大的设备类型,你的应用将会拥有大量的潜在用户.为了尽可能的在Android上取得成功,你的应用需要适配各种各样的设备…
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer.android.com/training/basics/supporting-devices/platforms.html 尽管最新版本的Android系统为你的应用提供了大量的API,你仍然应该继续支持较老版本的Android,直到更多的设备更新了系统.这堂课将向你展示应该如何利用新API的同时…
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer.android.com/training/basics/supporting-devices/languages.html 将UI字符串从你应用的代码中提取出来,并将它们放置在一个外部的文件中是一个值得长期保持的习惯.Android使得这件事情变的简单,在每个Andorid项目工程中,都有一个放置…
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer.android.com/training/animation/screen-slide.html 屏幕滑动是从一个完整的屏幕转换到另一个屏幕的动画,对于配置向导或者幻灯片的应用场景是很常见的.这节课将会展示如何使用support library.ViewPager提供的ViewPager来自动实现…
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer.android.com/training/basics/firstapp/creating-project.html 一.创建一个Android项目工程 一个Android项目工程包含所有构成你的Android应用的源代码文件,利用Android SDK工具可以很轻松地创建一个新的含有默认项目目录…
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer.android.com/training/efficient-downloads/efficient-network-access.html 在你的应用中,可能最消耗电力的就是用无线网络对资源进行下载了. 为了最小化网络连接对电池损耗的影响,你一定要理解你的连接模型是如何影响底层的的无线硬件的.这…
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer.android.com/training/basics/fragments/index.html 为了在Aondroid上创建一个动态可分割的UI,你需要将UI组建和activity的行为进行封装,通过这样的方式你可以将这些组建换入或换出你的activity.你可以通过Fragment类来创建这些…
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer.android.com/training/graphics/opengl/environment.html 要在你的应用中使用OpenGL ES绘制图像,你必须为它们创建一个视图容器.一个比较直接的方法是同时实现一个GLSurfaceView和一个GLSurfaceView.Renderer.GL…
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer.android.com/training/displaying-bitmaps/display-bitmap.html 这节课程将结合之前所有课程所学习的知识,向你展示如何使用后台线程和位图缓存,在ViewPager和GridView中展示多幅图片,并解决并发和配置变更的问题. 一). 实现向一个…
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer.android.com/training/displaying-bitmaps/cache-bitmap.html 向你的应用中加载一个单一的位图是很直接的行为,然而当你需要一次性加载一组图像的大集合时,事情会变得更加复杂.在很多情况下(比如对于ListView,GridView或者ViewPag…
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer.android.com/training/basics/fragments/fragment-ui.html 当你在设计你的应用时,为了支持不同的屏幕尺寸,你可以在不同的布局配置中重用你的fragment,以此在可用的屏幕空间上获得最优化的用户体验. 例如,在一个手持设备上,以单一窗格每次只显示一…
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer.android.com/training/basics/fragments/creating.html 你可以把一个fragment看成是一个activity的模块,有着自己的生命周期,接收自己的时间输入,你可以在activity的运行阶段添加或者移除fragment(某种意义上说,像是你可以在不…
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer.android.com/training/basics/actionbar/overlaying.html 默认的,Acton Bar会显示在你的activity窗口的上部,使得它会稍许减少了activity布局的剩余空间.如果在用户的UI交互过程中,你希望可以隐藏和显示Action Bar,你可…
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer.android.com/training/basics/actionbar/styling.html Action Bar能够向你的用户提供易掌握的操作方法,同时也能帮助用户导航,但这不代表所有应用的Action都长一个模样.如果你希望将你的Action Bar风格进行自定义来使它符合你应用的整体…
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer.android.com/training/basics/actionbar/adding-buttons.html Action Bar允许你为和应用当前Context相关的最重要的action事件添加按钮.那些在Action Bar中直接显示出来的图标或文字就是所谓的Action Buttons…
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer.android.com/training/basics/actionbar/setting-up.html 配置Action Bar Action Bar最基本的形式,是用来为Activity展示标题,并在左侧显示应用的图标.即使是这样的简单的形式,Action Bar对于所有activity来说…
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer.android.com/training/basics/actionbar/index.html 添加Action Bar Action Bar是你能为你应用的Activity所能实现的最重要的设计元素之一.它提供了一些用户接口特性,使得你的应用可以通过和其他的应用在使用过程中体现一致连贯性而被用…
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer.android.com/training/basics/firstapp/starting-activity.html  一. 启动另一个Activity 在完成了之前的课程后,你已经拥有了一个显示一个Activity(即只有一个屏幕画面)的应用,在这个Activity中有一个文本框和一个按钮.在…
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer.android.com/training/basics/firstapp/building-ui.html 一. 构建一个简单UI 一个Android应用通过View和ViewGroup对象所组成的层次结构来构建图形用户接口(GUI).通常View对象是一些UI控件,比如按钮(buttons),文…
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer.android.com/training/basics/firstapp/running-app.html 一.运行你的应用 如果按照上一节课的步骤创建了一个Android项目工程,那么它将包含一组构成“Hello World”的源文件,以此使你可以直接运行这个程序. 你如何运行这个程序取决于两件…
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer.android.com/training/location/geofencing.html 地理围栏可以将用户当前地点信息和周围的地点信息相结合,它其实是用户接近潜在的感兴趣的地点的程度.要标记一个感兴趣的地点,你需要指定它的经纬度.要调整接近的位置,你还需要添加一个半径.经纬度和半径加起来就成为…
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer.android.com/training/sync-adapters/creating-sync-adapter.html 在你应用中的同步适配器组件会封装在设备和服务器之间传输数据的任务代码.基于你提供的调度和触发器,同步适配器框架会在同步适配器组件中运行你的代码.要将同步适配组件添加到你的应用…
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer.android.com/training/sync-adapters/creating-authenticator.html 同步适配器框架假定你的同步适配器在同步数据时,设备存储会有一个账户,服务器存储端会有登录验证.因此,框架期望你提供一个叫做验证器的组件作为你的同步适配器的一部分.该组件会植…
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer.android.com/training/cloudsync/gcm.html 谷歌云消息(GCM)是一个用来给Android设备发送消息的免费服务.GCM消息可以极大地提升用户体验.你的应用可以一直保持更新的状态而不用在唤醒无线电和在没有更新的使用对服务器发起询问等事情上消耗电量.同时,GCM可…
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer.android.com/training/efficient-downloads/redundant_redundant.html 最基本的减少你的下载数量的方法就是只下载你需要的数据.就数据而言,这就意味着实现REST APIs(译者注:REST即Representational State T…
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer.android.com/training/basics/network-ops/managing.html 这节课将讲解如何写一个对使用网络资源具有细粒度控制的应用.如果你的应用要执行很多网络操作,你需要提供用户设置,使得用户可以控制你的应用处理数据的行为,比如你的应用同步数据的频率,是仅在有Wi…
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer.android.com/training/basics/activity-lifecycle/recreating.html 在应用被正常使用的情况下,会有一些场景发生并使得你的activity被销毁,比如:当用户按下了返回键,或者你的activity调用了finish()方法将自己销毁.当你的a…
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer.android.com/training/basics/activity-lifecycle/starting.html 不像其他的编程范例一样应用的函数入口是“main()”方法,Android根据Activity处于何种声明周期状态去调用它所对应的生命周期回调函数,以此来创建一个Activit…
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer.android.com/training/basics/network-ops/connecting.html 这节课将会向你展示如何实现一个简单地连接网络的应用.这当中包含了一些创建哪怕是最简单的网络连接应用时需要遵循的最佳实践规范. 注意,要执行这节课中所讲的网络操作,你的应用清单必须包含如下…