摘要:
OverviewAndroid exposes a native API to applications through the Native Development Kit (NDK). It is described in the $NDK/docs/STABLE-APIS.html docum...
阅读全文
posted @ 2014-05-19 01:21
MMLoveMeMM
阅读(427)
推荐(0)
摘要:
本文参考了http://www.cnblogs.com/lknlfy/archive/2012/03/16/2400786.html这篇博文,加了点自己的东西本文转自 : http://blog.csdn.net/panda1234lee/article/details/13503291java的代...
阅读全文
posted @ 2014-05-19 01:19
MMLoveMeMM
阅读(818)
推荐(0)
摘要:
下面这篇文章可以实现如何修改Android的系统属性文件字段参数.—直朝那个方向走,或许真的能到达那个地方。o(∩∩)o…哈哈Property system 是 Android 系统中一个重要的 Feature,它以一个 service 的形式来管理系统的配置和状态,每个 property 都是一个...
阅读全文
posted @ 2014-05-19 00:45
MMLoveMeMM
阅读(3131)
推荐(0)
摘要:
这一篇给出 ,前面内容的demo作为进一步了解,的用法.1、 在Android的java层实现文件的读写操作是非常简单的. 在JNI层实现文件的读写操作的话,就要使用到linux的读写函数了。2、打开文件[cpp] view plaincopyprint?intopen(constchar*path...
阅读全文
posted @ 2014-05-19 00:36
MMLoveMeMM
阅读(1619)
推荐(0)
摘要:
前面介绍了那个结构体,为这一篇文章做了铺垫,这一篇进一步介绍so在整个加载过程中的流程.当android的VM(虚拟机)调用System.LoadLibrary函数去加载.so文件时,首先会调用JNI_OnLoad函数。这个函数有两个功能:1. 告诉VM,该C组件使用哪一个版本的JNI。如果so文件...
阅读全文
posted @ 2014-05-19 00:31
MMLoveMeMM
阅读(841)
推荐(0)
摘要:
前几天看项目,虽然对jni开发有一定了解,但是还是一个人的大脑接触还是较少,所以...今天看看JNINativeMethod用法,这个结构体一般用在so加载时,虚拟机调用JNI_onload函数时,注册native方法的.1、JNINativeMethod 结构体的官方定义[cpp] view pl...
阅读全文
posted @ 2014-05-19 00:28
MMLoveMeMM
阅读(488)
推荐(0)
摘要:
本来想直接看看Thread的,结果差一个小插曲:Android 的Bionic C语言库的使用.我们在前面博客的文章中的plus.cpp和plus.h中直接添加读写操作文件:增加filemanager(char* infor)的函数#include#ifndef PLUS_HEADER_H__#de...
阅读全文
posted @ 2014-05-18 23:20
MMLoveMeMM
阅读(4366)
推荐(0)
摘要:
一、概述 JNI编程和Linux上的C/C++编程还是挺相似的,每次java调用JNI中的函数时都会传入有关JVM的一些参数(如JNIEnv,jobject),每次JNI回调java中的方法时都要通过JVM的有关参数来实现,当在JNI中涉及到多线程的话还是有一些不一样的地方,就是要在子线程函数里...
阅读全文
posted @ 2014-05-18 02:19
MMLoveMeMM
阅读(509)
推荐(0)
摘要:
刚开始一直没有找到该系列的第五篇博客,郁闷的要死,本打算重写的,看来没必要了.那这一篇就相当于小结第五篇和第六篇使用的样例.所有的NDK都是在Linux系统下开发的,jni C或者CPP文件这一篇开始是在windosws7 VC6.0中开发的.所以下面的新建Android项目之类的都是在我的Ubun...
阅读全文
posted @ 2014-05-18 02:17
MMLoveMeMM
阅读(289)
推荐(0)
摘要:
首先说明,这里搭建vs用于开发jni,是针对Android的NDK开发的,不是和网上其他介绍的用来开发dll,在windows中用java来开发dll,觉得有点不可思议,可能不是了解为什么要用jni来开发windows的dll库.步骤如下: : 首先从微软网站上下载VS2010版本,不推荐从中文下载...
阅读全文
posted @ 2014-05-17 01:48
MMLoveMeMM
阅读(448)
推荐(0)
摘要:
每一次操作select的时候,总是要出来翻一下资料,不如自己总结一下,以后就翻这里了。比如1、设置value为pxx的项选中 $(".selector").val("pxx");2、设置text为pxx的项选中 $(".selector").find("option[text='pxx']").at...
阅读全文
posted @ 2014-05-16 18:44
MMLoveMeMM
阅读(117)
推荐(0)
摘要:
android下的按键布局和映射 这个笔记整理一下使用usb键盘遇到的问题,比如添加usb键盘的keylayout,添加按键,修改按键映射等。 本文参考了: http://blog.csdn.net/kieven2008/archive/2011/03/26/6279975.aspx http:/...
阅读全文
posted @ 2014-05-16 01:30
MMLoveMeMM
阅读(673)
推荐(0)
摘要:
Android4.1添加新的按键添加新的物理按键 DECT_REGISTER, DECT_PHONE 1.kl文件添加按键码映射,251,252 是 驱动上报上来的键值,该键值对应驱动里面的code设定,DECT_REGISTER字符串对应keycodeLabels.h中的字符窜,这样就把驱动传递上...
阅读全文
posted @ 2014-05-16 01:10
MMLoveMeMM
阅读(524)
推荐(0)
摘要:
原文标题 : 基于S3C2440的Linux-3.6.6移植——按键驱动对于s3c2440开发板上的几个按键功能,linux系统提供了很好的支持,只要把按键对应的IO端口配置好,按键就可以工作了。针对我的开发板,为了配置按键的IO端口,需要修改arch/arm/mach-s3c24xx目录下的mac...
阅读全文
posted @ 2014-05-16 00:53
MMLoveMeMM
阅读(676)
推荐(0)
摘要:
按键从Linux到Android 现在的普通按键也集成到Linux Input子系统中了,只需要把按键对应的IO端口配置好,按键就可以工作了。所以一般提供的BSP(或者叫作解决方案)中,已经完善了按键驱动。关键是快速的了解按键的映射。所以这里不作源码级分析。源码分析可以参考这里:《基于S3C244...
阅读全文
posted @ 2014-05-16 00:47
MMLoveMeMM
阅读(541)
推荐(0)
摘要:
下面我有两个样例,这两个样例在调用上互逆的,一个是功能是在jni中的C/C++语言中实现的,一个是功能用java实现的,但是调用(或者说使用这个功能)是在jni中的C/C++语言实现的(仅仅调用而已),样例一:jni调用java实现的功能method: :java实现的如下:package nati...
阅读全文
posted @ 2014-05-14 14:09
MMLoveMeMM
阅读(962)
推荐(0)
摘要:
今天去另外一家方案公司,学了一点东西,有时候真觉得不容易...很多东西要看的东西实在太多,所以一回到自己的公司,马上记录下来,不然就忘记了前提条件是Android整个系统已经全部编译过一次了.为了不被搜索引擎检索到,下面的步骤都是截图的方式: : 首先工作实际工作目录是在source code 的d...
阅读全文
posted @ 2014-05-13 18:49
MMLoveMeMM
阅读(287)
推荐(0)
摘要:
1. Platform驱动在ASoC中的作用前面几章内容已经说过,ASoC被分为Machine,Platform和Codec三大部件,Platform驱动的主要作用是完成音频数据的管理,最终通过CPU的数字音频接口(DAI)把音频数据传送给Codec进行处理,最终由Codec输出驱动耳机或者是喇叭的...
阅读全文
posted @ 2014-05-11 23:57
MMLoveMeMM
阅读(488)
推荐(0)
摘要:
1. Codec简介在移动设备中,Codec的作用可以归结为4种,分别是:对PCM等信号进行D/A转换,把数字的音频信号转换为模拟信号对Mic、Linein或者其他输入源的模拟信号进行A/D转换,把模拟的声音信号转变CPU能够处理的数字信号对音频通路进行控制,比如播放音乐,收听调频收音机,又或者接听...
阅读全文
posted @ 2014-05-11 23:56
MMLoveMeMM
阅读(539)
推荐(0)
摘要:
前面一节的内容我们提到,ASoC被分为Machine、Platform和Codec三大部分,其中的Machine驱动负责Platform和Codec之间的耦合以及部分和设备或板子特定的代码,再次引用上一节的内容:Machine驱动负责处理机器特有的一些控件和音频事件(例如,当播放音频时,需要先行打开...
阅读全文
posted @ 2014-05-11 23:55
MMLoveMeMM
阅读(272)
推荐(0)
摘要:
1. ASoC的由来ASoC--ALSA System on Chip ,是建立在标准ALSA驱动层上,为了更好地支持嵌入式处理器和移动设备中的音频Codec的一套软件体系。在ASoc出现之前,内核对于SoC中的音频已经有部分的支持,不过会有一些局限性: Codec驱动与SoC CPU的底层耦合过于...
阅读全文
posted @ 2014-05-11 23:53
MMLoveMeMM
阅读(291)
推荐(0)
摘要:
Control接口Control接口主要让用户空间的应用程序(alsa-lib)可以访问和控制音频codec芯片中的多路开关,滑动控件等。对于Mixer(混音)来说,Control接口显得尤为重要,从ALSA 0.9.x版本开始,所有的mixer工作都是通过control接口的API来实现的。ALS...
阅读全文
posted @ 2014-05-11 23:52
MMLoveMeMM
阅读(490)
推荐(0)
摘要:
1. PCM是什么PCM是英文Pulse-code modulation的缩写,中文译名是脉冲编码调制。我们知道在现实生活中,人耳听到的声音是模拟信号,PCM就是要把声音从模拟转换成数字信号的一种技术,他的原理简单地说就是利用一个固定的频率对模拟信号进行采样,采样后的信号在波形上看就像一串连续的幅值...
阅读全文
posted @ 2014-05-11 23:51
MMLoveMeMM
阅读(454)
推荐(0)
摘要:
1. struct snd_card1.1. snd_card是什么snd_card可以说是整个ALSA音频驱动最顶层的一个结构,整个声卡的软件逻辑结构开始于该结构,几乎所有与声音相关的逻辑设备都是在snd_card的管理之下,声卡驱动的第一个动作通常就是创建一个snd_card结构体。正因为如此,...
阅读全文
posted @ 2014-05-11 23:49
MMLoveMeMM
阅读(311)
推荐(0)
摘要:
一. 概述ALSA是Advanced Linux Sound Architecture 的缩写,目前已经成为了linux的主流音频体系结构,想了解更多的关于ALSA的这一开源项目的信息和知识,请查看以下网址:http://www.alsa-project.org/。 在内核设备驱动层,ALSA提供了...
阅读全文
posted @ 2014-05-11 23:48
MMLoveMeMM
阅读(431)
推荐(0)
摘要:
frameworks 目录 (核心框架——java及C++语言).|-- base (基本内容)| |-- api (?都是xml文件,定义了java的api?)| |-- awt (AWT库)| |-- build (空的)| |-- camera (摄像头服务程序库)| |-- cmds (重要...
阅读全文
posted @ 2014-05-11 22:45
MMLoveMeMM
阅读(358)
推荐(0)
摘要:
前面只是简单的一个文件,如果一个驱动是多个文件,还放在char目录下,将来维护不是很方便,这样做,可以直接在drivers目录下新建自己的一个目录用来放自己开发的驱动.步骤如下: : 首先编写出驱动程序:main.c#include#include#include#include#include#i...
阅读全文
posted @ 2014-05-11 13:56
MMLoveMeMM
阅读(245)
推荐(0)
摘要:
把自己编写的字符设备module添加到linux内核中编译的步骤如下: : 编写一个测试程序:#include#include#include#include#include#include#define DEVICE_NAME "hellomodule"static struct file_ope...
阅读全文
posted @ 2014-05-11 13:24
MMLoveMeMM
阅读(390)
推荐(0)
摘要:
趁着整理系统的时间,据群里面的一位小伙子,查了一下反编译工具和操作方法:反编译工具下载链接和使用方法说明:http://www.hensence.com/cn/smali2java/smali工具链接:https://code.google.com/p/smali/wiki/NewDownloadL...
阅读全文
posted @ 2014-05-09 00:59
MMLoveMeMM
阅读(251)
推荐(0)
摘要:
LCD驱动程序往2.6.11内核的移植总结硬件环境:SBC-2410X开发板(CPU:S3C2410X)内核版本:2.6.11.1运行环境:Debian2.6.8交叉编译环境:gcc-3.3.4-glibc-2.3.3注:本驱动移植是基于s3c2400 framebuffer 的驱动。一、从网上将L...
阅读全文
posted @ 2014-05-08 00:08
MMLoveMeMM
阅读(280)
推荐(0)
摘要:
我下载了linux 3.2版本的,放到ubuntu12.04的版本进行了编译.Linux kernel 下载:https://www.kernel.org/,就在首页.下载后解压就展开如下:makemrproper把原来编译产生的垃圾删除配置内核可以根据需要与爱好使用下面命令中的一个:#makeco...
阅读全文
posted @ 2014-05-07 22:38
MMLoveMeMM
阅读(543)
推荐(0)
摘要:
Android之蓝牙驱动开发总结原文链接:http://blog.csdn.net/manshq163com/article/details/18550767一Bluetooth基本概念 3二AndroidBluetooth架构 32.1Bluetooth架构图 32.2Bluetooth代码层次结...
阅读全文
posted @ 2014-05-07 12:13
MMLoveMeMM
阅读(7943)
推荐(1)
摘要:
配置文件的信息:[root@ora10g network-scripts]# catifcfg-eth0DEVICE="eth0"NM_CONTROLLED="yes"ONBOOT=yesTYPE=EthernetBOOTPROTO=noneIPADDR=192.168.1.12PREFIX=24G...
阅读全文
posted @ 2014-05-07 01:15
MMLoveMeMM
阅读(1645)
推荐(0)
摘要:
[DESCRIPTION]如何修改蓝牙设置中,第一次开机Android蓝牙设备的默认名称。[SOLUTION]修改frameworks\base\core\jni\Android_bluetooth_common.h将BTMTK_ANDROID_DEFAULT_LOCAL_NAME值改掉,注意此处有...
阅读全文
posted @ 2014-05-07 01:11
MMLoveMeMM
阅读(749)
推荐(0)
摘要:
使用Linux越来越多,千头万绪,冥冥之中走上这条路.........................程序暂时是在ubuntu系统中测试的.首先写驱动程序:#include#include#include#include#include#include#define DEVICE_NAME "m_d...
阅读全文
posted @ 2014-05-06 00:43
MMLoveMeMM
阅读(204)
推荐(0)
摘要:
有个关于蓝牙耳机的按键怎么映射到系统里面的问题,刚刚看了一下。1)如果是HFP按键,则是耳机是通过AT命令发送到手机侧的。代码位于BluetoothHandsfree.javaHang-up 命令:// Hang-up command parser.register("+CHUP", ...
阅读全文
posted @ 2014-05-05 19:46
MMLoveMeMM
阅读(932)
推荐(0)
摘要:
两个参考: : http://jingyan.baidu.com/article/ce09321b2e69492bff858f12.html : http://jingyan.baidu.com/article/bad08e1ea3b1a609c85121b6.html很多时候需要将一张图片的底色变...
阅读全文
posted @ 2014-05-05 17:12
MMLoveMeMM
阅读(870)
推荐(0)
摘要:
用vim写代码时,经常遇到这样的场景,复制多行,然后粘贴。这样做:1. 将光标移动到要复制的文本开始的地方,按v进入可视模式。2. 将光标移动到要复制的文本的结束的地方,按y复制。此时vim会自动将光标定位到选中文本的开始的地方,并退出可视模式。3. 我移动光标到文本结束的地方,按p粘贴。一、多行d...
阅读全文
posted @ 2014-05-04 16:10
MMLoveMeMM
阅读(127418)
推荐(5)
摘要:
SIP(Session Initiation Protocol)服务在Android 2.3中正式引入,能够支持VOIP,当然在早期版本中,也有不少第三方成功的将SIP服务移植到Android中。比较著名的客户端包括sipdroid等。在Android中,SIP客户端的实现位于android.net...
阅读全文
posted @ 2014-05-03 23:16
MMLoveMeMM
阅读(1606)
推荐(0)
摘要:
会话发起协议 Android提供了一个支持会话发起协议(SIP)的API,这可以让你添加基于SIP的网络电话功能到你的应用程序。Android包括一个完整的SIP协议栈和集成的呼叫管理服务,让应用轻松无需管理会话和传输层的沟通就可设置传出和传入的语音通话,或直接音频记录或播放。以下类型的应用程序可能...
阅读全文
posted @ 2014-05-03 23:11
MMLoveMeMM
阅读(3128)
推荐(0)