文章 2017-11-08 来自:开发者社区

Android系统默认Home应用程序(Launcher)的启动过程源代码分析(4)

     Step 17. LoaderTask.loadAndBindAllApps         这个函数定义在packages/apps/Launcher2/src/com/android/launcher2/LauncherModel.java文件中: [java] view plainc...

文章 2017-11-08 来自:开发者社区

Android系统默认Home应用程序(Launcher)的启动过程源代码分析(3)

        Step 13.  ActivityStack.startActivityLocked         这个函数定义在frameworks/base/services/java/com/android/server/am/ActivityStack.java文件中,具体可以参考And...

文章 2017-11-08 来自:开发者社区

Android应用程序组件Content Provider的启动过程源代码分析(1)

  通过前面的学习,我们知道在Android系统中,Content Provider可以为不同的应用程序访问相同的数据提供统一的入口。Content Provider一般是运行在独立的进程中的,每一个Content Provider在系统中只有一个实例存在,其它应用程序首先要找到这个实例,然后才能访问它的数据。那么,系统中的Content Provider实例是由谁来负责启动的...

文章 2017-11-08 来自:开发者社区

Android应用程序组件Content Provider的启动过程源代码分析(7)

   函数installProvider执行完成以后,返回到Step 16中的instalContentProviders函数中,执行下面语句: try {       ActivityManagerNative.getDefault().publishContentProviders( ...

文章 2017-11-07 来自:开发者社区

在Ubuntu上下载、编译和安装Android最新源代码

   看完了前面说的几本书之后,对Linux Kernel和Android有一定的认识了,是不是心里蠢蠢欲动,想小试牛刀自己编译一把Android源代码了呢?一直习惯使用Windows系统,而Android源代码是不支持在Windows上编译上,于是决定使用虚拟机安装Ubuntu,然后下载、编译和安装Android源代码。      一. 环境准备...

文章 2017-11-07 来自:开发者社区

Android日志系统Logcat源代码简要分析

   在前面两篇文章Android日志系统驱动程序Logger源代码分析和Android应用程序框架层和系统运行库层日志系统源代码中,介绍了Android内核空间层、系统运行库层和应用程序框架层日志系统相关的源代码,其中,后一篇文章着重介绍了日志的写入操作。为了描述完整性,这篇文章着重介绍日志的读取操作,这就是我们在开发Android应用程序时,经常要用到日志查看工具Logca...

文章 2017-11-07 来自:开发者社区

Android系统进程间通信(IPC)机制Binder中的Server启动过程源代码分析(1)

 在前面一篇文章浅谈Android系统进程间通信(IPC)机制Binder中的Server和Client获得Service Manager接口之路中,介绍了在Android系统中Binder进程间通信机制中的Server角色是如何获得Service Manager远程接口的,即defaultServiceManager函数的实现。Server获得了Service Manager远程接口之...

文章 2017-11-07 来自:开发者社区

Android系统进程间通信(IPC)机制Binder中的Client获得Server远程接口过程源代码分析(3)

  注意,这里的status参数为0。从这里可以看出,binder_send_reply告诉Binder驱动程序执行BC_FREE_BUFFER和BC_REPLY命令,前者释放之前在binder_transaction分配的空间,地址为buffer_to_free,buffer_to_free这个地址是Binder驱动程序把自己在内核空间用的地址转换成用户空间地址再传给Service M...

文章 2017-11-07 来自:开发者社区

Android系统进程间通信(IPC)机制Binder中的Client获得Server远程接口过程源代码分析

在上一篇文章中,我们分析了Android系统进程间通信机制Binder中的Server在启动过程使用Service Manager的addService接口把自己添加到Service Manager守护过程中接受管理。在这一篇文章中,我们将深入到Binder驱动程序源代码去分析Client是如何通过Service Manager的getService接口中来获得Server远程接口的。Clien....

文章 2017-11-07 来自:开发者社区

Android系统进程间通信Binder机制在应用程序框架层的Java接口源代码分析(2)

这里我们可以看到IHelloService.aidl这个文件编译后的真面目,原来就是根据IHelloService接口的定义生成相应的Stub和Proxy类,这个就是我们熟悉的Binder机制的内容了,即实现这个HelloService的Server必须继续于这里的IHelloService.Stub类,而这个HelloService的远程接口就是这里的IHelloService.Stub.Pr....

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。

mPaaS 移动开发平台

mPaaS 源于蚂蚁集团金融科技,为 App 开发、测试、运营及运维提供云到端的一站式解决方案,致力于提供高效、灵活、稳定的移动研发、管理平台。 官网地址:https://www.aliyun.com/product/mobilepaas/mpaas

+关注