摘要: 第6章 权限(Permissions)本文档介绍了应用程序开发人员如何使用由Android提供的安全功能。在Android 开放源代码项目AOSP(Android Open Source Project)中提供了更普通的Android安全性概述。Android是一种分权限的操作系统,在Android上运行的每个应用程序都具有各自独立的系统标识(Linux用户ID和组ID)。系统各部分有不同并明显的标识。因此,Linux上运行的各个应用程序相互独立且与系统无关。Android的“permissions”机制通俗来说就是你程序就算实现了那个功能,如果没申请权限的话,那个功能一样运行部了。并且每个应 阅读全文
posted @ 2012-09-21 16:08 jy02432443 阅读(3766) 评论(0) 推荐(2) 编辑
摘要: 第5章 Android中的进程与线程 当一个应用程序开始运行它的第一个组件时,Android会为它启动一个Linux进程,并在其中执行一个单一的线程。默认情况下,应用程序所有的组件均在这个进程的这个线程中运行(就是我们常说的android app主线程)。然而,你也可以安排组件在其他进程中运行,而且可以为任意进程创建额外的线程。本章主要介绍android app下的线程和进程是如何工作的5.1 进程默认情况下,同一应用程序的所有组件运行在同一进程中。不过,如果你需要控制某个组件属于哪个进程,也可以通过修改manifest文件来实现。manifest文件中的所有组件节点如<activity 阅读全文
posted @ 2012-09-11 17:48 jy02432443 阅读(2200) 评论(3) 推荐(3) 编辑
摘要: 第4章 Intents和Intent Filters一个Android应用程序的三个核心组件-activities,services,boradcast receivers都是通过调用intents消息来激活的。Intent消息传递是在最近运行的组件之间的一种设施,它能用于相同的或不同的应用程序中。intent它本身是一个Intent对象,是一种把想要执行的操作抽象化的数据结构,或者使用广播描述发生或者宣布一些事情。传递每一种组件类型的intent都有一个单独的机制:1. 一个Intent对象通过Context.startActivity()或者Activity.startActivityFo 阅读全文
posted @ 2012-09-05 16:07 jy02432443 阅读(1997) 评论(0) 推荐(1) 编辑
摘要: 第2章 ServicesService是一个长期运行在后台,并不提供用户界面的应用程序组件。其他应用程序的组件可以启动一个service,并且即使用户切换到另一个应用程序,service也可以在后台继续运行。此外,一个组件可以绑定到service与它进行交互,甚至执行进程间通信(IPC)。例如,一个service可能会处理来自后台的所有事情,包括网络事务、播放音乐、执行文件I/O或者与content provider交互。一个service基本上有两种形态:1. 启动态(Started):当应用程序组件调用startService()方法来启动一个service时,service就处于“sta 阅读全文
posted @ 2012-08-15 17:48 jy02432443 阅读(2280) 评论(1) 推荐(2) 编辑
摘要: 第1章 ActivityActivity是一个应用程序组件,它提供了一个屏幕,用户可以与它进行交互来做一些事情,比如拨打电话,拍照,发邮件,或查看地图。每个Activity都被给予了一个窗口,可在其中绘制它的用户界面。窗口通常会占据整个屏幕,但可能比屏幕和浮在上方的其他窗口都要小。一个应用程序通常由多个互相松散绑定的activity组成。当首次启动应用时,应用程序中会有一个activity被指定为“main”activity呈现给用户。这样每个activity就可以启动另一个activity来执行不同的操作。每次启动一个新的activity,先前的activity就会停止,但系统会保留堆栈(回 阅读全文
posted @ 2012-08-03 18:21 jy02432443 阅读(2754) 评论(1) 推荐(3) 编辑
摘要: 第7章 与其他应用程序交互一个Android应用程序通常有几个activities。每个act显示一个用户接口允许用户执行一个指定的任务。用户从一个act到另一个act,你的App必须使用一个Intent对象来定义你App想做些什么事。当你通过一个Intent调用startActivity()方法时,系统会使用Intent来鉴定和启动合适的App组件。一个Intent可以明确的启动一个特定的组件(如一个特定的act实例)或隐式启动任何可以处理预定动作的组件,本章我们将讲述怎么使用Intent来执行与其他Apps的一些交互,例如启动另一个App,从那个App接收结果。并使你的应用程序能够响应来自 阅读全文
posted @ 2012-07-22 20:16 jy02432443 阅读(1949) 评论(2) 推荐(0) 编辑
摘要: 第6章 使用Fragments构建动态UI为了在Android创建一个动态的多面的用户界面,你需要封装UI组件和activity的行为到一种可以相互交换的act的模块中。我们能使用Fragment类创建这些模块,这行为有点像一个嵌套的act,它可以定义自己的布局和管理自己的生命周期。Fragment的好处已经越发明显,它是Android3.0新增的API。当一个fragment指定它的布局,它能以不同的组合配置到act中,为不同的屏幕大小修改你的布局配置,一个小屏幕可能只显示一个fragment,而在大屏幕中可能显示2个或2个以上的fragment。本章说明怎样使用fragment创建动态的用 阅读全文
posted @ 2012-07-08 14:14 jy02432443 阅读(5988) 评论(3) 推荐(2) 编辑
摘要: 第5章 支持不同的Android设备来自世界各地的Android设备在外表上看有许多形状和大小。如此广泛的设备类型,如果你能兼容不同的设备,那么你将为你的App获得一批巨大的潜在用户。为了让你的App在Android设备上尽可能的成功,你需要适应各种设备的配置。这些不同设备中的重要变化就是不同的语言,屏幕大小,和系统版本。关于Android上App的适配,在第一大篇中我们曾讲过基础的理论,并且在“指南-第3章 Hello,本地化”中我们实践过不同语言的支持。在以后的学习过程中,笔者会在适当的时候继续慢慢深入Android的适配,请记住如果你要学精它,不是1,2篇文章就能搞定的。需要你的实践与思 阅读全文
posted @ 2012-07-06 10:13 jy02432443 阅读(3006) 评论(2) 推荐(0) 编辑
摘要: 第4章 Activity的生命周期当我们在屏幕上发生一些事件,比如点击某个按钮用来切换Activity或来电情况等,都会触发Activity的生命周期事件,为什么我们要了解Activity的生命周期呢?因为了解了它的生命周期我们才能根据不同的情况来处理我们的应用,让我们的应用程序更好用,更人性化。例如,如果你建立一个流媒体视频播放器,当用户切换到另一个应用程序,你可能会暂停视频和终止网络连接。当用户返回时,你可以重新连接到网络,并允许用户恢复从同一地点的录像。这些行为都可以直接在Activity的生命周期方法中处理它们。可能有的读者以前在网上看过关于生命周期的解释。这里我会透彻的,详细的讲述它 阅读全文
posted @ 2012-06-30 10:35 jy02432443 阅读(3168) 评论(2) 推荐(2) 编辑
摘要: 第3章 Hello,L10N(本地化)本章我们将创建一个Hello,L10N的应用程序,它会根据Android框架来选择性的载入一些资源。然后我们将一些资源添加到res/目录中,通过这样的方法来将我们的应用程序本地化。3.1 创建一个未本地化的应用程序在第一个Hello, L10N 的版本中我们仅适用默认的资源目录(res/drawable,res/layout, res/values)。 这些资源没有本地化-它们是我们经常使用的图形,布局,字符串等。当用户在默认的的语言环境中,将加载这些默认目录的资源。该应用程序包含一个简单的用户界面,显示两个TextView对象和一个图像按钮。当点击按钮时 阅读全文
posted @ 2012-06-07 18:22 jy02432443 阅读(2101) 评论(1) 推荐(1) 编辑