Welcome 微信登录

首页 / 操作系统 / Linux

浅析调用Android的content provider

浅析调用Android的content provider

在Android下,查询联系人、通话记录等,需要用到content provider。但是,调用content provider时,Android框架内部是如何做的呢?这一系列文章就是解决这个问题的,所采用的开发环境及源码都是基于Android 1.6版本。概述 总的来说此问题分为两个步骤:初始化content provider。这一阶段主要是参照AndroidManifest.xml,初始化content provider。注意这里只有当包含conte...
Android利用NDK实现C++开发

Android利用NDK实现C++开发

NDK概述 NDK提供了一系列的工具,帮助开发者快速开发C(或C++)的动态库,并能自动将so和java应用一起打包成apk。这些工具对开发者的帮助是巨大的。NDK集成了交叉编译器,并提供了相应的mk文件隔离CPU、平台、ABI等差异,开发人员只需要简单修改mk文件(指出“哪些文件需要编译”、“编译特性要求”等),就可以创建出so。NDK可以自动地将so和Java应用一起打包,极大地减轻了开发人员的打包工作。Google明确声明该API是稳定的,在后续所有...
Linux下objdump汇编与C源程序混合显示

Linux下objdump汇编与C源程序混合显示

问题描述:在Linux下发生一个进程死机问题,由于进程跑在客户的机器上,没有启用Coredump,因此死机没有CoreDump文件,仅有进程临死前的调用栈信息;调用栈中保存了导致死机的函数的入参和局部变量的内容,需要对其进行解析,确定临死前入参和局部变量的内容。解决方案:(1)入参的解析,入参的解析相对较为简单,如函数A调用函数B,B的入参可以这样确定:首先在堆栈中找到A的EIP,EIP的前一个地址就是A的EBP,EIP的后一个地址是B的第一个入参,依次类...
从ramdisk根文件系统启动Linux成功

从ramdisk根文件系统启动Linux成功

这几天参考国嵌的实验手册和网上的资料完成了u-boot定制、内核定制、ramdisk根文件系统的制作,并成功。趁热打铁,总结一下。本文引用了很多网络上的文章,就不一一注明了。感谢各大侠的帮助,如有雷同,望见谅。开发环境:红帽企业版5交叉编译工具链:arm-linux-gcc4.3.2嵌入式Linux内核版本:友善之臂的mini2440开发板光盘自带的内核linux-2.6.32.2开发板:mini2440-64MNand FlashBootloader:u...
嵌入式学习记录:内存管理单元(MMU)介绍

嵌入式学习记录:内存管理单元(MMU)介绍

嵌入式系统中,存储系统差别很大,可包含多种类型的存储器件,如 FLASH , SRAM , SDRAM , ROM 等,这些不同类型的存储器件速度和宽度等各不相同;在访问存储单元时,可能采取平板式的地址映射机制对其操作,或需要使用虚拟地址对其进行读写;系统中,需引入存储保护机制,增强系统的安全性。为适应如此复杂的存储体系要求, ARM 处理器中引入了存储管理单元来管理存储系统。 一 内存管理单元( MMU )概述 在 ARM 存储系统中,使用 MMU 实...
嵌入式Linux学习笔记

嵌入式Linux学习笔记

注:所有内容基于友善之臂Mini2440开发板一、嵌入式Linux开发环境的构建嵌入式开发一般分为三个步骤:1、编译bootloader,烧到开发板2、编译嵌入式Linux内核,烧到开发板3、编译各类应用程序,烧入开发板软件环境构建采用主机windows,虚拟机CentOS上作为开发环境,虚拟机的安装和Linux安装就不说了。安装好后Linux应该配置samba服务,挂载windows下的代码共享目录安装交叉编译工具链对于嵌入式Linux,程序都是下到开发...
Android中的layout_weight

Android中的layout_weight

layout_weight 用于给一个线性布局中的诸多视图的重要度赋值。所有的视图都有一个layout_weight值,默认为零,意思是需要显示多大的视图就占据多大的屏幕空间。若赋一个高于零的值,则将父视图中的可用空间分割,分割大小具体取决于每一个视图的layout_weight值以及该值在当前屏幕布局的整体 layout_weight值和在其它视图屏幕布局的layout_weight值中所占的比率而定。举个例子:比如说我们在 水平方向上有一个文本标签和两...
<< 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 >>