上一页 1 2 3 4 5 6 7 ··· 10 下一页

2012年2月13日

Android系统的Binder机制之二——服务代理对象(1)

摘要: 上文《Android系统的Binder机制之一——Service Manager》我们学习了Service Manager在Android Binder中的作用——服务(Service)注册,服务(Service)查询的功能。本文我们一起学习服务(Service)在客户端中的代理机制。重点介绍其核心对象BpBinder。 1、服务代理的原理 如下是客户端请求service服务的场景:1、首先客户端向Service manager查找相应的Service。上文《Android系统的Binder机制之一——Service Manager》有比较详细的介绍。注意客户端和Service可能在... 阅读全文

posted @ 2012-02-13 17:06 小小博客小小员 阅读(692) 评论(0) 推荐(0) 编辑

Android系统的Binder机制之一——Service Manager

摘要: Android虽然构建在Linux上面,但是在IPC(进程间)机制方面,没有利用Linux提供IPC机制,而是自己实现了一套轻量级的IPC机制——binder机制。并且Android Binder机制之上,Android框架提供了一套封装,可以实现对象代理(在本地进程中代理远程进程的对象)。本文简单分析一下Android Binder机制。Binder情景分析 一个IPC通讯我们可以理解成客户端-服务器模式,因此我们先在这里分析一下典型的Binder应用模式:1、客户端通过某种方式(后文会详细介绍)得到服务器端的代理对象。从客户端角度看来代理对象和他的本地对象没有什么差别。它可以像其他本地对. 阅读全文

posted @ 2012-02-13 17:05 小小博客小小员 阅读(918) 评论(0) 推荐(0) 编辑

深入理解Android消息处理系统——Looper、Handler、Thread

摘要: 熟悉Windows编程的朋友可能知道Windows程序是消息驱动的,并且有全局的消息循环系统。而Android应用程序也是消息驱动的,按道理来说也应该提供消息循环机制。实际上谷歌参考了Windows的消息循环机制,也在Android系统中实现了消息循环机制。Android通过Looper、Handler来实现消息循环机制,Android消息循环是针对线程的(每个线程都可以有自己的消息队列和消息循环)。本文深入介绍一下Android消息处理系统原理。 Android系统中Looper负责管理线程的消息队列和消息循环,具体实现请参考Looper的源码。 可以通过Loop.myLooper()得到当 阅读全文

posted @ 2012-02-13 17:04 小小博客小小员 阅读(276) 评论(0) 推荐(0) 编辑

电子书

摘要: 原来电子书都存放在163网盘上,近期有网友反映163网盘不给力,广告太多!我决定把电子书慢慢转移到华为115网盘上,如果你也想注册115网盘,请点击Simon的邀请链接,这样你和Simon都将获得300M的免费奖励空间。声明:Simon的电子书大部分来自互联网,如果您发现这些电子书侵犯了你的版权,请联系Simon,我会进行妥善处理。Linux/UNIXLinux内核完全注释(赵炯) Unix环境高级编程(英文版)源码 Unix环境高级编程(中文版)源码 Linux Command Line and Shell Scripting Bible 虚拟文件系统... 阅读全文

posted @ 2012-02-13 17:01 小小博客小小员 阅读(440) 评论(0) 推荐(0) 编辑

Android JNI编程提高篇之二

摘要: 上文《Android JNI编程提高篇之一》中我和大家分享了局部引用的一些理解,本文我将继续和大家全局引用和弱全局引用的一些理解。这也可以作为我学习《Java Native Interface: Programmer’s Guide and Specification》一个总结,欢迎大家对本文的理解拍砖。全局引用 在所有引用中,我觉得全局引用是最好理解的一个了。为什么呢?主要和C语言的全局变量非常相近。 上文《Android JNI编程提高篇之一》我已经提到局部引用大部分是通过JNI API返回而创建的,而全局引用必须要在Native代码中显示的调用JNI API NewGlobalRef来创 阅读全文

posted @ 2012-02-13 17:00 小小博客小小员 阅读(518) 评论(0) 推荐(0) 编辑

Android JNI编程提高篇之一

摘要: Simon在拙文《Android JNI开发入门之二》中提到了,Android JNI开发的深入学习的一些资料和方法。最近Simon在学习《Java Native Interface: Programmer’s Guide and Specification》,在学习过程中发现在JNI规范中关于引用部分是最难理解的,恕Simon愚钝,看了两遍才对其思想略有理解,在此和大家分享我对JNI规范中引用部分的理解,如果有错误之处,希望能和各位网友一起探讨。什么是JNI规范中对象引用 在JNI编程中,Native代码不能对Java虚拟机中对象的内存分布有任何假设。因为Java虚拟机可以根据自己的策略定. 阅读全文

posted @ 2012-02-13 16:58 小小博客小小员 阅读(599) 评论(0) 推荐(0) 编辑

Android JNI开发入门之二

摘要: 在上一篇文章《Android JNI开发入门之一》中,我介绍了Android应用程序(APK)怎样通过JNI调用Native C实现的共享库。本文将进一步介绍Android应用程序通过JNI调用Native C++实现的共享库,并实现一个和上文《Android JNI开发入门之一》相同功能的Helloworld应用程序。两套不同的API 前文已经提到,Android系统的Java虚拟机为C和C++实现两套不同的API,所以我们调用的时候需要注意这一点儿。另外Google并没有提供JNI的文档,我们调用的时候可以参考Android的jni.h文件,里面有C和C++的JNI函数原型。也可以把本例. 阅读全文

posted @ 2012-02-13 16:56 小小博客小小员 阅读(354) 评论(0) 推荐(0) 编辑

Java: JNI完全手册

摘要: JAVA以其跨平台的特性深受人们喜爱,而又正由于它的跨平台的目的,使得它和本地机器的各种内部联系变得很少,约束了它的功能。解决JAVA对本地操作的一种方法就是JNI。 JAVA通过JNI调用本地方法,而本地方法是以库文件的形式存放的(在WINDOWS平台上是DLL文件形式,在UNIX机器上是SO文件形式)。通过调用本地的库文件的内部方法,使JAVA可以实现和本地机器的紧密联系,调用系统级的各接口方法。AD:最近在公司里做了一个手机的项目,需要JAVA程序在发送短信的时候和第三方的短信服务器连接。短信接口是用C++写的。琢磨了三天,大致搞懂了JNI的主体部分。先将心得整理,希望各位朋友少走弯.. 阅读全文

posted @ 2012-02-13 16:39 小小博客小小员 阅读(299) 评论(0) 推荐(0) 编辑

Android平台刷机包制作研究(2)

摘要: 以下是偶翻译的关于boot.img和recovery.img的编辑和修改方面的文章,希望能够为感兴趣的朋友节约一些看资料的时间。感谢本文的作 者:Alansj, DarkriftX, RyeBrye, Will, Try OP9, Tonyb486, Timmmm, Lxrose还有好多不知名的作者们在wiki上的不懈努力。如何解包/编辑/大包boot.img文件很多人用自己的方式解决了boot.img的解包/编辑/打包的问题,有人要求我来写一篇关于boot和recovery映像的文件结构和如何对其编辑的文章,于是就有了下面这篇文章。目录1、背景知识2、boot和recovery映像的文件结构 阅读全文

posted @ 2012-02-13 11:50 小小博客小小员 阅读(982) 评论(0) 推荐(0) 编辑

Android平台刷机包制作研究(1)

摘要: 好久没有上博客来看看,甚至用户名和密码都记得不那么真切了。言归正传,最近有朋友问偶如何制作android平台的刷机包的问题。总算说服自己研究一下 如何制作一个android平台的刷机包,可能我了解的方法还不是很全面,也走了不少的弯路,但是以此做为一串探索的足迹,希望能为来者节约宝贵的时间, 也请对此感兴趣的各位同仁尽量避免偶曾经犯过的错误。在此先要明确声明一下:由于android平台的更新换代过于频繁,偶的做法不一定好用,也不一定完全正确(只是记录一下偶在自己的nexus one上面做的一些实验而已)。依照偶的做法出现了您的手机出现任何问题,偶都是不负责的喔!!英文好的朋友可以不必看着偶聒噪, 阅读全文

posted @ 2012-02-13 11:48 小小博客小小员 阅读(693) 评论(0) 推荐(0) 编辑

上一页 1 2 3 4 5 6 7 ··· 10 下一页

导航