随笔分类 -  09.Android

摘要:1.关于JNIEnv和JavaVMJNIEnv:线程相关的变量JavaVM:是虚拟机在JNI层的代表,JNIEnv是一个与线程相关的变量,不同线程的JNIEnv彼此独立。JavaVM是虚拟机在JNI层的代表,在一个虚拟机进程中只有一个JavaVM,因此该进程的所有线程都可以使用这个JavaVM。当后... 阅读全文
posted @ 2015-04-13 19:20 qiynet 阅读(477) 评论(0) 推荐(0)
摘要:上一篇说的是一个简单的应用,说明JNI是怎么工作的,这一篇主要来说一下,那个本地方法sayHello的参数的说明,以及其中方法的使用首先来看一下C++中的sayHello方法的实现:[cpp]view plaincopyJNIEXPORTvoidJNICALLJava_com_jni_demo_JN... 阅读全文
posted @ 2015-04-13 19:11 qiynet 阅读(439) 评论(0) 推荐(0)
摘要:在上两篇文章中,我们介绍了如何为Android系统的硬件编写驱动程序,包括如何在Linux内核空间实现内核驱动程序和在用户空间实现硬件抽象层接口。实现这两者的目的是为了向更上一层提供硬件访问接口,即为Android的Application Frameworks层提供硬件服务。我们知道,Android... 阅读全文
posted @ 2015-04-11 19:54 qiynet 阅读(510) 评论(0) 推荐(0)
摘要:Android下log的使用总结一:在源码开发模式下1:包含头文件:#include2:定义宏LOG_TAG#defineLOG_TAG"MYLOGTAG"3:链接log对应的.so库在Android.mk文件中加入如下语句:LOCAL_SHARED_LIBRARIES+=\libcutils接下来... 阅读全文
posted @ 2015-04-11 19:28 qiynet 阅读(790) 评论(0) 推荐(0)
摘要:今天被打印信息的去除困扰了,想了想,如果靠一个一个的改动未免太繁琐。因此就仔细的看了下这部分的打印原理。当然下面只是简单的进行了知识罗列不过有需要的朋友可以随便看看。说不准会有些收获呢。Include/linux/printk.h中有如下定义:#defineKERN_EMERG""/* system... 阅读全文
posted @ 2015-04-11 17:58 qiynet 阅读(729) 评论(0) 推荐(0)
摘要:先开个头,准备这与一篇struct hw_module_t HAL_MODULE_INFO_SYM 相关的文章。Hal层的库文件是怎么被上层调用的?上层调用时的入口(相当于main)又是什么呢?它就是HAL_MODULE_INFO_SYM。下gps.default.so库为例子:①上层gpstest... 阅读全文
posted @ 2015-04-11 17:14 qiynet 阅读(950) 评论(0) 推荐(0)
摘要:第一部分 libutils概述 libutils是Android的底层库,这个库以C++实现,它提供的API也是C++的。Android的层次的C语言程序和库,大都基于libutils开发。 libutils中的头文件如下所示: frameworks/base/include/utils ... 阅读全文
posted @ 2015-04-11 16:58 qiynet 阅读(867) 评论(0) 推荐(0)
摘要:在前一篇文章中,我们介绍了如何在Ubuntu上为Android系统编写Linux内核驱动程序。在这个名为hello的Linux内核驱动程序中,创建三个不同的文件节点来供用户空间访问,分别是传统的设备文件/dev/hello、proc系统文件/proc/hello和devfs系统属性文件/sys/cl 阅读全文
posted @ 2015-04-11 14:14 qiynet 阅读(491) 评论(0) 推荐(0)
摘要:简单来说,硬件驱动程序一方面分布在Linux内核中,另一方面分布在用户空间的硬件抽象层中。接着,在Ubuntu上为Android系统编写Linux内核驱动程序(老罗学习笔记1)一文中举例子说明了如何在Linux内核编写驱动程序。在这一篇文章中,我们将继续介绍Android系统硬件驱动程序的另一方面实... 阅读全文
posted @ 2015-04-11 14:12 qiynet 阅读(1100) 评论(0) 推荐(0)
摘要:这里,我们不会为真实的硬件设备编写内核驱动程序。为了方便描述为Android系统编写内核驱动程序的过程,我们使用一个虚拟的硬件设备,这个设备只有一个4字节的寄存器,它可读可写。想起我们第一次学习程序语言时,都喜欢用“Hello, World”作为例子,这里,我们就把这个虚拟的设备命名为“hello” 阅读全文
posted @ 2015-04-07 19:54 qiynet 阅读(1738) 评论(0) 推荐(0)
摘要:首先要先明确OpenJDK和Sun/OracleJDK之间,以及OpenJDK 6、OpenJDK 7、OpenJDK 7u和OpenJDK 8等项目之间是什么关系,这有助于确定接下来编译要使用的JDK版本和源码分支。从前面介绍的Java发展史中我们了解到OpenJDK是Sun在2006年末把Jav... 阅读全文
posted @ 2015-03-17 16:23 qiynet 阅读(2024) 评论(0) 推荐(0)
摘要:一.在FriendlyARM,Tiny4412,,安装包下可补充: (按照手册添加openjdk-6-jdk 后) 安装JDK (Java),选择需要的JDK,或者全部安装。 a) OpenJDK-6.0 (作用) $ sudo apt-get update $ sudo apt-get insta 阅读全文
posted @ 2015-03-17 15:52 qiynet 阅读(378) 评论(0) 推荐(0)
摘要:注意:frameworks/base/nfc-extras/java/com/android/nfc_extras/NfcAdapterExtras.java 使用了未经检查或不安全的操作。注意:要了解详细信息,请使用 -Xlint:unchecked 重新编译。target Java: send_... 阅读全文
posted @ 2015-03-13 08:36 qiynet 阅读(629) 评论(0) 推荐(0)
摘要:make is pretty smart, and picks up what has changed from the last build, so if you run repo sync and then build without cleaning, in most cases it sho... 阅读全文
posted @ 2015-03-12 20:05 qiynet 阅读(514) 评论(0) 推荐(0)
摘要:android源码目录下的build/envsetup.sh文件,描述编译的命令- m: Makes from the top of the tree.- mm: Builds all of the modules in the current directory.- mmm: Builds all... 阅读全文
posted @ 2015-03-11 20:48 qiynet 阅读(284) 评论(0) 推荐(0)
摘要:1.make:进入目录'/opt/FriendlyARM/tiny4412/android/android-4.1.2'make: *** 没有规则可以创建“out/target/product/generic/obj/SHARED_LIBRARIES/libandroid_servers_inte... 阅读全文
posted @ 2015-03-05 18:12 qiynet 阅读(385) 评论(0) 推荐(0)
摘要:make:进入目录'/opt/FriendlyARM/tiny4412/android/android-4.1.2'make: *** 没有规则可以创建“out/target/product/generic/obj/EXECUTABLES/hello_intermediates/LINKED/hel... 阅读全文
posted @ 2015-03-05 18:00 qiynet 阅读(276) 评论(0) 推荐(0)
摘要:1make:进入目录'/opt/FriendlyARM/tiny4412/android/android-4.1.2'make: *** 没有规则可以创建“out/target/product/generic/obj/SHARED_LIBRARIES/audio.usb.default_interm... 阅读全文
posted @ 2015-03-05 15:53 qiynet 阅读(497) 评论(0) 推荐(0)
摘要:Default (and possibly architecture dependents) HAL modules go here. libhardware.so eventually should contain *just* the HAL hub(hardware.c), everythin... 阅读全文
posted @ 2015-03-05 15:32 qiynet 阅读(229) 评论(0) 推荐(0)
摘要:androidramdisk1、android文件系统的结构android源码编译后得到system.img,ramdisk.img,userdata.img映像文件。其中,ramdisk.img是emulator的文件系统,system.img包括了主要的包、库等文件,userdata.img包括... 阅读全文
posted @ 2015-02-28 12:48 qiynet 阅读(1516) 评论(0) 推荐(0)

跳至侧栏