每一位Android开发者应该知道的Android体系架构和开发库

  英文原文:Android Architecture and Libraries Every Android Developer Should Know

  Android 的体系架构鼓励组件重用,允许开发者发布共享 Activity、Service 并且访问其他应用程序的数据,还可以根据开发者制定的安全限制进行管理。话虽如此,今天我将分享一些关于 Android 架构和开发库信息,供开发者创建下一个杀手级应用使用。准备好了吗?请继续下面的阅读!

  不要被上面的图片吓到,你无需了解所有内容。

  Android 架构支持开发者创建自己的联系人应用或者电话拨号程序。你可以公布自己应用的组件,让其他开发者在此基础上创建新的用户界面,进行功能扩展或者其他工作!这是多么奇妙啊?

  剖析 Android 体系架构

  第一个列表将向开发者展示应用服务,这些服务是 Android 的架构基石。你也可以称它为所有的 Android 应用程序的支柱框架,为所有开发应用提供支持。

  • Activity Manager:控制界面的生命周期,包括管理活动(Activity)栈。
  • Views:Views 为应用程序构建用户界面。
  • Notification Manager:提供一贯的非侵入式的机制来通知用户(例如:当你正在玩游戏时有人给你发短信,通知不会终止你的游戏,你会听到一个声音提示)。
  • Content Providers:让开发者在不同应用程序之间共享数据。
  • Resource Manager:支持非代码资源,如字符串和图形被外部化。

  现在你对第一个主要部分有了解,我们可以看看 Android 库,这将使开发 Android 应用程序更加容易和有趣。正如你所知道的,这些都只是简短的描述,可以通过我分享的链接了解更多!

  开发者需要知道的 Android 库

  Android 也提供了大量的 API 开发应用程序。所以在这个列表中,将帮助开发者了解哪些是可用的核心 API。所有的 Android 设备将提供至少这些 API 支持:

  • android.util:核心工具包中包含底层类,字符串格式化和 XML 解析工具、底层类??。
  • android.os:操作系统包提供了访问基本的操作系统服务,如消息传递、进程间通信、时钟功能和调试。
  • android.graphics:图形 API 提供了支持画布、颜色和绘制图元的低级别的图形类并且支持绘制画布。
  • android.text:用于显示和解析文本的文本处理工具。
  • android.database:在数据库处理游标时提供底层类支持。
  • android.content:content API 管理数据访问,提供服务来管理资源、内容提供者(content provider)和包。
  • android.view:视图是核心的用户接口类。所有用户界面元素使用的是一系列视图,以构成用户交互的组件。
  • ** android.widget**:内置在 View 包内,小部件类是“这里是我们前面创建的”用户界面元素,可以在自己的应用程序中使用。包括列表、按钮和布局。
  • com.google.android.maps:高级的 API,它提供了访问本地地图控件,可以在自己的应用程序中使用。包括 MapView 的控制、用于标注和控制您的嵌入式地图的叠加以及MapController类。
  • android.app:一个高层次的包,允许访问应用程序模型。该应用程序包包括ActivityService的 API 等是 Android 应用程序的基础。
  • android.provider:方便开发者访问标准的内容提供者(比如联系人数据库),provider包提供类给开发者访问标准的数据库。
  • android.telephony:telephony API 让开发者直接接触电话底层,开发者可以打电话、接电话、显示通话记录、通话状态和短消息。
  • android.webkit:WebKit 的软件包功能的 API 与基于 Web 的内容的工作,其中包括一个 WebView 控件在您的活动中嵌入浏览器和 cookie 管理器。

  同样,你刚才看到的是 Android 的库可以帮助您快速构建应用程序的简化列表!除了在 Android API,Android 栈还包括一组的C/C++库,可通过应用程序框架发布出来。它们包括:

  • OpenGL:用于支持基于 OpenGL ES1.0 API、3D 图形库。
  • ** FreeType**:这支持位图和矢量字体渲染。
  • ** SGL**:用于提供 2D 图形引擎的核心库。
  • ibc:标准C库,为基于 Linux 的嵌入式设备进行了优化。
  • SQLite:用于存储应用程序数据的轻量级的关系数据库引擎。
  • SSL:支持使用安全套接字层加密协议进行安全互联网通信。

  注意:到此,要介绍的就太多了,我将在这里结束。只是多一个部分,你可以做自己的事情。如果你不能看完整个帖子,可以将其加入书签,以备将来参考。因为,这里的大多数内容不会有太大变化!

  高级 Android 开发库

  我们所看到的核心库,到目前为止提供所有开发 Android 应用程序需要的功能。然而钻研高级 API 将会使用更高级的功能并带来额外的乐趣。

  尽管如此,值得注意的是,由于 Android 希望针对移动硬件有更广泛的适应性,因此要注意下列 API 适用的场合和以及使用时装置是否具备条件。

  • android.location:基于位置的服务的 API,使应用程序访问设备的当前物理位置。基于位置的服务提供通用的访问使用任何位置固定的硬件或技术设备上可用的位置信息。
  • android.media:媒体 API 提供了用于播放音频和视频媒体文件,包括流媒体和录制的支持。
  • android.opengl:Android 提供使用的 OpenGL ES API,你可以用它来创建动态 3D 用户界面为你的应用程序的强大的 3D 渲染引擎。
  • android.hardware:如有可能,硬件 API 公开的传感器硬件,包括摄像头、加速计和指南针传感器。
  • android.bluetooth,android.net.wifi,android.telephony:Android 也提供了硬件平台,包括蓝牙、Wi-Fi 和电话硬件的低级别的访问。

  当然,你还可以阅读更多有关 Android 的架构和开发库,可以点击这里开始。

  感谢阅读,如果你喜欢本文,请使用下面的按钮在线与您的朋友分享!如果您有任何疑问,请让我知道。欢迎向我提意见和建议,通过 Facebook、谷歌和 Twitter 联系。哦,请订阅其他优秀文章。

时间: 2024-07-29 11:53:34

每一位Android开发者应该知道的Android体系架构和开发库的相关文章

Web 设计与开发者必须知道的 15 个站点

新闻来源:catswhocode.com公司博客整整一个月没有更新了,最近一段时间,全公司都忙于两件事,为海尔集团做定制,为一个合作伙伴做 OEM,终于有了眉目.工作期间,常用到一些工具与帮助站点,今天读到一篇文章,介绍了15个对 Web 设计与开发师极端有用的站点,里面有不少也是我们一直在使用的,也许对很多人都有用,翻译出来以饷同仁. ColorCombos 配色是 Web 设计的首要大事,Color Combos 帮你预备了数千种配色方案,可以根据色调浏览选取.LIpsum Lorem Ip

PHP开发者该知道的5个Composer小技巧

Composer 是新一代的PHP依赖管理工具.本文介绍使用Composer的五个小技巧,希望能给你的PHP开发带来方便. 1. 仅更新单个库 只想更新某个特定的库,不想更新它的所有依赖,很简单 composer update foo/bar 此外,这个技巧还可以用来解决“警告信息问题”.你一定见过这样的警告信息: Warning: The lock file is not up to date with the latest changes in composer.json, you may

Android开发者必知的开发资源

developer.android.com 官方开发者站点推荐资源 在动手编写第一个 Android 应用之前,用心读一读 Android Design 章节.尤其是下面的这些文章: Devices and Displays  (设备和显示) Touch Feedback(触摸反馈) Metrics and Grids (度量和网格) Iconography (图像研究) 同时也请下载 Downloads 部分的代码,这些代码囊括了 Android 图标和控件的设计模板,源文件,样式以及无样式图

Android Studio指定引用jnilibs 特定CPU架构的so库文件

稍微大一些的项目都会用到第三方库,所以不可避免的会有针对不同手机cpu架构的.so库文件 'x86', 'x86_64', 'mips', 'mips64'  'armeabi' ,'armeabi-v7a',  'arm64-v8a' 但是不是所有的第三方库都会适配所有的cpu架构,本人亲测采用一种降低性能却减少库文件的方式 就是只用armeabi-v7a库:有armeabi-v7a就把其他的都删掉,没有armeabi-v7a,把armeabi的文件移到armeabi-v7a中,把其他的都删除

移动开发者必须知道的Android框架推荐

一些总结出来的Android快速开发框架,全部都是开源框架,附带项目地址,是开发学习的绝佳资料. thinkAndroid项目 github地址:https://github.com/white-cat/ThinkAndroid 功能:ThinkAndroid是一个免费的开源的.简易的.遵循Apache2开源协议发布的Android开发框架,其开发宗旨是简单.快速的进行 Android应用程序的开发,包含Android mvc.简易sqlite orm.ioc模块.封装Android httpc

Android开发者必知的5个开源库

http://www.csdn.net/article/2014-06-16/2820224-top-5-android-libraries 过去的时间里,Android开发逐步走向成熟.而无论出现多少Android相关的开发工具,我们每天使用的大量开源库却始终是不可或缺的.这里,向大家介绍的是,这个任劳任怨的大家庭中,最受开发者喜爱的五个Android库. 过去的时间里,Android开发逐步走向成熟,一个个与Android相关的开发工具也层出不穷.不过,在面对各种新鲜事物时,不要忘了那些我们

你需要知道的Android拍照适配方案

拍照功能实现 Android 程序上实现拍照功能的方式分为两种:第一种是利用相机的 API 来自定义相机,第二种是利用 Intent 调用系统指定的相机拍照.下面讲的内容都是针对第二种实现方式的适配. 通常情况下,我们调用拍照的业务场景是如下面这样的: A 界面,点击按钮调用相机拍照: A 界面得到拍完照片,跳转到 B 界面进行预览: B 界面有个按钮,点击后触发某个业务流程来处理这张照片: 实现的大体流程代码如下: 01.//1.调用相机 02.File mPhotoFile = new Fi

你需要知道的 Android 拍照适配方案

近段时间,家里陪自己度过大学四年的电脑坏了,挑选好的新电脑配件终于在本周全部到货,自己动手完成组装.从AMD到i7的CPU,6G内存到14G内存,打开 AndroidStudio 的速度终于杠杆的上去了,感动到泪流满面啊!!!!!!!扯了这么多,回归一下正题,还是来说说本篇文章要写什么吧!说起调用系统相机来拍照的功能,大家肯定不陌生,现在所有应用都具备这个功能.例如最基本的,用户拍照上传头像.Android开发的孩纸都知道,碎片化给拍照这个功能的实现带来挺多头疼的问题.所以,我决定写写一些网上不

刚知道的android属性

在EditText中当设置的高度是wrap_parent,但是随着我们输入的越来越多,编辑框会被拉伸的很丑,所以就用了maxLines属性,设置maxLines="2"说明最多输入的行数为2行!则不会被拉伸!!! 在ImageView中想要在监视器中改变图像,用到setImageResource()方法 ProgressBar是一个进度条,有一个属性有必要掌握android:visibilty,是控制进度条在加载完成时的状态,visible是默认的,完全可见还占据屏幕空间,invisi