-
-12 16
1.操作系统是ubuntu11.10
2.去官网下载texinfo4.9源码
3.安装依赖包:
sudo apt-get install libncurses5-dev
4.编译并安装到自己的机器中
-
-12 7
- 在android里面跨进从传递数据只能传递基本的数据类型,对象是不能传递的其实也可以要使用aidl,不过原理还是在新的进程中创建一个一样的对象,类的描述就在aidl里面,所以在跨进程的时候为什么要有aidl的原因,下面是用c++的方式通过nativeAPI的soket传递Parcel。之前做过了在android下通过socket发送数据的实验,也做过了parcel包的制作和解包的实验(这两个实验的源程序之前都在本博客的其他文章中贴过)。昨天和今天把这两个过程合并了起来:即在Android环境下,甲程序(C++程序)将数据封装在Parcel中,并把Parcel发送到SOCKET;乙程序(C++程序)通过SOCKET接收到Parcel包,并解出封装在其中数据。
-
-12 7
我们在做android开发的时候可能会遇到过这样的问题,动态的加载.so库文件,而在api中只提供给我们System.LoadLibrary();这样一个接口。我们只能加载/data/data/xxx.xxx.xxx/lib/下面的.so库,不能加载sdcard上面的.so库。这样给动态加载.so带来了许多的麻烦。但是我们可以通过dlopen(".system/lib/xxx.so",RTLD_NOW);来调用系统的lib,你只需要写个.so放到工程的/libs/arm-eabi/xxxx下面,然后让.so去调用你系统里面某个位置对.so,从而达到动态安装的.so的功能。
-
-11 24
IntentService的出现主要是在于解决了多次startService()调用出现的资源同步问题,初次之外还可以解决UI阻塞的问题,因为他使用了HandlerThread 将MessageQueue和Looper放到了单独的
线程中,从而维护了对此startService()的环境队列,在者又可以在HandlerThread 中区执行Handler.target的细节。所以就相当于你在service中开了线程并将该线程加入MessageQueue和Looper,用于维护队列和处理事件。
-
-11 15
/data/data/<package name> 是当前应用程序私有的,可以供当前的应用程序操作。/data/data/<package name>目录的权限为rwxr-xr-x,拆解:
...
-
-11 14
在开发android的时候会发生这样的异常,异常信息显示如下:
”This message is already in use“
发生的原因: 使用Message的时候发生了多次使用,也就是Message对象是线程安全的,当我们再次使用Message的时候,Message已经处在队列中了
-
-10 17
Activityd的创建要经过一堆的初始化过程,我们平时在开发中只需要使用Intent就行了,至于如何让创建,以及如何加载apk里面的类资源以及文件资源都给屏蔽掉了,Intent到底是什么?为什么可以跨进程?为什么可以发广播又可以启动服务,还可以传参?Activity到底是什么,既可以显示空间又可以窗口管理,又可以路由消息?到底是什么机制在支撑着Activity运行?
这篇只简单的谈论下Activity的上下文创建过程。
Activity与ContextImpl的关联:
-
-10 14
在我们刷机的时候会经常看到 fastboot ,也就是开机的文字界面,这个fastboot是用c写的,在uboot检查完硬件以及初始化堆栈结构后将cs/ip指向fastboot代码段处执行的,他主要完成的功能是清除flash中的内容,往flash中烧写linux内核以及镜像文件,这些镜像文件包括.so以及framework的jar包。 fastboot协议是一种通过usb连接于bootloader通讯的机制
...
-
-9 5
本人英语水平有限,翻译有很多不足之处,希望高手们多多帮助。
英文原文:
由于空间有限,英文原文请参见:
-
-7 26
在编译toolchain的时候容易出现很多错误,当然有些是警告,可以不用理会的警告,一些错误会导致编译的终止,如果编译停止了,说明有错误发生。不停止就是正常或者是警告,一般不会影响。
下面列出在编译toolchain是容易出现的几个错误信息以及解决方案:

-
-6 28

这个图可以说明加载的时间和顺序。当执行到System.load()的时候才开始加载相应的动态库。三后在调用动态库方法的时候才去扫描动态库的方法。
-
-6 28
Android.mk
------------------------------------------------------------------------------------------
LOCAL_PATH := $(call my-dir) #当前路径类似于php中的 __FILE__
include $(CLEAR_VARS) #清楚上次遗留的一些垃圾变量 类似于php中的 include_once('CLEAR_VARS.PHP');
-
-6 21
-
-6 17
android的LogCat有个bug,就是会多输出你要打印的内容,大概就2-3次左右,因为logcat是使用socket通讯的,课能在线程的控制方面,没有做的很细节活。还有android的最新的sdk已经更新了不能显示中文的bug,就是logcat显示中文乱码的bug,初次之外还有更新了可视化布局android xml文件的工具,增加了许多的功能。下面是截图证据1.在未打开输出前,主