??xml version="1.0" encoding="utf-8" standalone="yes"?>色久综合一二码,国产日韩欧美一区二区三区四区,久久久久久有精品国产http://www.aygfsteel.com/fatbear/category/48182.html得到多少又失M什?zh-cnSun, 03 Apr 2011 09:53:46 GMTSun, 03 Apr 2011 09:53:46 GMT60Android学习 (? 应用E序l构http://www.aygfsteel.com/fatbear/archive/2011/04/02/347540.htmlfatbearfatbearSat, 02 Apr 2011 07:58:00 GMThttp://www.aygfsteel.com/fatbear/archive/2011/04/02/347540.htmlhttp://www.aygfsteel.com/fatbear/comments/347540.htmlhttp://www.aygfsteel.com/fatbear/archive/2011/04/02/347540.html#Feedback0http://www.aygfsteel.com/fatbear/comments/commentRss/347540.htmlhttp://www.aygfsteel.com/fatbear/services/trackbacks/347540.html

在一个Android 应用中有如下的四U组Ӟ
* Activity zdlg
* Intent Receiver 接受处理lg
* Service 服务lg
* Content Provider 内容提供lg
一个Android 应用q不需要同时具有这四个lgQ应用可以组合这些组件?/p>

在应用中一旦决定用了哪些lgQ就需要在AndroidManifest.xml文g中列丑և来?br />

Activity
Activities是最普遍的组Ӟ在应用中通常用于昄一个屏q(面Q的内容Q仅仅一个屏q(面Q的内容。开发h员需要从Activity?cȝ承下来,理UI昄和UI的反馈事件。大多数应用E序都会有多个屏q(面Q的内容Q如一个文本消息的应用E序Q第一个页面要昄联系人列表,W二 个页面要写东西给选定的联pMhQ其他页面显C旧的文本内Ҏ者其他等{。每一个页面都被当做一个ActivityQ活动组ӞQ移动到其他面意味着开?了一个新的ActivityQ活动组Ӟ。在某些场景下,一个Activity可以q回值给前一个ActivityQ如一个页面选择了一张图片,可以q回 q张囄l调用者(ActivitQ?/p>

打开新的面Ӟ前一个页面将会暂停,攄C个历史堆栈中Q用户可以用后退键浏览前面的面Q页面也可以从堆栈中删除。Android会ؓ每一个从主页面home screenQidle界面Q)启动的应用维护一个历史堆栈列表?/p>

Intent and Intent Filters
Android使用一个叫Intent的类从一个页面移动到另外一个页面。一个Intent描述了应用将要做的事情,是一U动作行为。最重要的有两点Q?动作的类型和动作所捎带的参敎ͼ数据Q,典型的动作类型ؓMAINQactivity的正门)QVIEW, PICK, EDIT{等。参数数据以URI形式来表C。例如,Z查看一个h的联pM息,需要创Z个IntentQ动作类型ؓVIEWQh名ؓ参数数据Q需要格?化ؓURIQ?/p>

一个ActivityZ表明能够处理某些IntentQAndroid设计了一个相关的cIntentFilterQActivity?IntentFilter中决定它能够处理的Intent动作cdQIntentFilter需要在AndroidManifest.xml文g中进行声 明?/p>

从一个页面到另外一个页面蟩转的依据在于发出的IntentQؓ了向前浏览,Activity调用startActivity(myIntent). Androidpȝ在所有安装的应用E序中查找intent filtersQ找出最能够匚wmyIntent的Activity。新的activity被启动Qintent被传入。有如下两个关键点:
* Activities 能够重新被?br /> * Activities 在Q何时候都可以被替换,只要一个Activity讄了相同的IntentFilter

Intent Receiver
在应用程序中Q针对外部事仉要执行一些动作来反馈Q可以用IntentReceivercR例如:来了一个电话,或者数据通道可用Q或者晚上到了?Intent Receiver没有UI的显C,管可以通过NotificationManager 通知用户某些有趣的事情发生了。Intent Receivers也需要在AndroidManifest.xml中进行声明,当然也可以在E序中调?Context.registerReceiver()接口动态声明。同时在应用E序没有跑v来的时候也能够调用Intent ReceiversQ当一个Intent Receivers被触发时QAndroidpȝ会启动q个应用E序。应用程序也能够通过Context.broadcastIntent()q播他们 的Intent?/p>

Service
一个Service是没有UIQ一直运行在后台的代码组件。一个好的例子:播放器从一个播攑ֈ表中播放歌曲。在一个播攑֙应用中,大概会有一个或多个 Activitylg允许用户选择歌曲和播攑֮们,歌曲播放代码不应该放在Activitylg中,因ؓ我们希望一直能够听歌,甚至切换C其他面。所 以,播放器页面应该启动一个服务组ӞContext.startService()Q来播放歌曲。Androidpȝ会保持serviceq行直到?l束Q可以参?#8220;Android 应用的生命周?#8221;一文)。可以用Context.bindService()接口q接上一个服务(如果q时候服务没有启动,q接会导致服务启动)Q连?上之后,可以和服务q行通讯。像播放器的例子Q可以允许暂停,重绕{等?/p>

Content Provider
应用E序可以在文件中Q数据库或者其他设备存储他们的数据。Content Provider用于各个应用程序的数据q行׃nQContent Provider是一个类Q执行一套标准的ҎQ让其他的应用程序存储和获取Content Provider所处理的数?br />

转蝲自:http://blog.csdn.net/lixinye0123/archive/2008/04/16/2296916.aspx



fatbear 2011-04-02 15:58 发表评论
]]>
Android学习 (一) pȝ架构http://www.aygfsteel.com/fatbear/archive/2011/04/02/347529.htmlfatbearfatbearSat, 02 Apr 2011 07:07:00 GMThttp://www.aygfsteel.com/fatbear/archive/2011/04/02/347529.htmlhttp://www.aygfsteel.com/fatbear/comments/347529.htmlhttp://www.aygfsteel.com/fatbear/archive/2011/04/02/347529.html#Feedback0http://www.aygfsteel.com/fatbear/comments/commentRss/347529.htmlhttp://www.aygfsteel.com/fatbear/services/trackbacks/347529.html
Android的系l架构和其操作系l一P采用了分层的架构。从架构囄Qandroid分ؓ四个层,从高层到低层分别是应用程序层、应用程序框架层、系l运行库层和linux核心?br />


1、Application是在framework的基上开发的各种应用?br />      包括email客户端,SMS短消息程序,日历Q地图,览器,联系人管理程序等。所有的应用E序都是使用JAVA语言~写?br />
2、Application Framework(应用E序框架)
      Framework是android为应用开发者设计的一套Y件框Ӟ提供了丰富的api和一些现成的开发元素。Framework是采用java语言实现的。在NDK出来之前Qandroid应用开发者基本上只能用java来开发应用?br /> Android使用JNIq接了libraries和framework?br /> 在每个应用后面的是一pd的服务和pȝ, 其中包括;
  * 丰富而又可扩展的视图(Views)Q可以用来构建应用程序, 它包括列?lists)Q网?grids)Q文本框(text boxes)Q按?buttons)Q?甚至可嵌入的web览器?br />   * 内容提供?Content Providers)使得应用E序可以讉K另一个应用程序的数据(如联pMh数据?Q?或者共享它们自q数据
  * 资源理?Resource Manager)提供 非代码资源的讉KQ如本地字符Ԍ囑ŞQ和布局文g( layout files )?br />   * 通知理?(Notification Manager) 使得应用E序可以在状态栏中显C定义的提CZ息?br />   * zd理? Activity Manager) 用来理应用E序生命周期q提供常用的D回退功能
3、Libraries(pȝq行?
    包含了核心库、第三方库和android虚拟机。androidq没有直接采用传l的j2se或j2me的java虚拟机,而是自己建立了一个称为dalvik的虚拟机Q号U更节省字节码的I间Q性能更好?/p>

1)E序?br />   Android 包含一些C/C++库,q些库能被Androidpȝ中不同的lg使用。它们通过 Android 应用E序框架为开发者提供服务。以下是一些核心库Q?br />   * pȝ C ?- 一个从 BSD l承来的标准 C pȝ函数? libc )Q?它是专门为基?embedded linux 的设备定制的?br />   * 媒体?- Z PacketVideo OpenCORE;该库支持多种常用的音频、视频格式回攑֒录制Q同时支持静态图像文件。编码格式包括MPEG4, H.264, MP3, AAC, AMR, JPG, PNG ?br />   * Surface Manager - ҎC子pȝ的管理,q且为多个应用程序提 供了2D?D囑ֱ的无~融合?br />   * LibWebCore - 一个最新的web览器引擎用Q支持Android览器和一个可嵌入的web视图?br />   * SGL - 底层?D囑Ş引擎
  * 3D libraries - ZOpenGL ES 1.0 APIs实现;该库可以使用g 3D加?如果可用)或者用高度优化的3D软加速?br />   * FreeType -位图(bitmap)和矢?vector)字体昄?br />   * SQLite - 一个对于所有应用程序可用,功能强劲的轻型关pd数据库引擎?br /> 2)Android q行?br />   Android 包括了一个核心库Q该核心库提供了JAVA~程语言核心库的大多数功能?br />   每一个Android应用E序都在它自qq程中运行,都拥有一个独立的Dalvik虚拟机实例。Dalvik被设计成一个设备可以同旉效地q行多个虚拟pȝ?Dalvik虚拟机执?.dex)的Dalvik可执行文Ӟ该格式文仉对小内存使用做了优化。同时虚拟机是基于寄存器的,所有的c都l由JAVA~译器编译,然后通过SDK??"dx" 工具转化?dex格式p拟机执行?br />   Dalvik虚拟Z赖于linux内核的一些功能,比如U程机制和底层内存管理机?/p>

4.、Linux Kernel(Linux 内核)
    Android 的核心系l服务依赖于 Linux 2.6 内核Q如安全性,内存理Q进E管理, |络协议栈和驱动模型?Linux 内核也同时作为硬件和软g栈之间的抽象?/p>

fatbear 2011-04-02 15:07 发表评论
]]>
Android学习 开?/title><link>http://www.aygfsteel.com/fatbear/archive/2011/03/29/347212.html</link><dc:creator>fatbear</dc:creator><author>fatbear</author><pubDate>Tue, 29 Mar 2011 06:55:00 GMT</pubDate><guid>http://www.aygfsteel.com/fatbear/archive/2011/03/29/347212.html</guid><wfw:comment>http://www.aygfsteel.com/fatbear/comments/347212.html</wfw:comment><comments>http://www.aygfsteel.com/fatbear/archive/2011/03/29/347212.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/fatbear/comments/commentRss/347212.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/fatbear/services/trackbacks/347212.html</trackback:ping><description><![CDATA[    q一两年不停的做目Q很多东襉K没有及时记录下来Q特写此文,警示自己?br /> <br />    关于 androidpȝ的介l,google 下可以找到很多解释,q里不做解释<br />    <br />    选择android开发的原因如下Q?br />    1.Android选择Java作ؓ开发语a<br />    2.优秀的设计理?br />    3.丰富的终端优? <img src ="http://www.aygfsteel.com/fatbear/aggbug/347212.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/fatbear/" target="_blank">fatbear</a> 2011-03-29 14:55 <a href="http://www.aygfsteel.com/fatbear/archive/2011/03/29/347212.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <a href="http://www.aygfsteel.com/" title="狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频">狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频</a> </div> </footer> վ֩ģ壺 <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">Ϫ</a>| <a href="http://" target="_blank">³</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">¡</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ˮ</a>| <a href="http://" target="_blank">Ȫ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">˰</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">޽</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ƽ</a>| <a href="http://" target="_blank">Զ</a>| <a href="http://" target="_blank">̨</a>| <a href="http://" target="_blank">γ</a>| <a href="http://" target="_blank">ʳ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ɽ</a>| <a href="http://" target="_blank">Ԫ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ϼ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">Ҷ</a>| <a href="http://" target="_blank">ˮ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">޶</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ɽʡ</a>| <a href="http://" target="_blank">ϴ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ɽ</a>| <a href="http://" target="_blank"></a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>