Android底层开发
文章平均质量分 60
经历实战后的开发记录 ...
韩搏
专注于学习Linux及Android底层开发......
展开
-
Android 内存分析
Android 内存原创 2023-03-08 18:11:25 · 121 阅读 · 0 评论 -
Android 开发环境搭建
android-ndk-r21e下载及验证码:slg4unzip android-ndk-r21e-linux-x86_64.zip 解压后放到 /opt/openlinux下vi ~/.bashrcexport ANDROID_NDK=/opt/openlinux/android-ndk-r21eexport PATH=$ANDROID_NDK:$PATHexport PATH=/opt/openlinux/android-ndk-r21e/toolchains/arm-linux-andro.原创 2021-06-16 15:57:20 · 38240 阅读 · 0 评论 -
Android开发常用命令
adb安装apk: adb install -r demo.apk-l 锁定该应用程序-r 替换已存在的应用程序(强制安装)-t 允许测试包-s 把应用程序安装到sd卡上-d 允许安装的比手机上带的版本低-g 为应用程序授予所有运行时的权限查看应用列表: adb shell pm list packages查看系统应用: adb shell pm list packages...原创 2019-11-12 10:03:36 · 45102 阅读 · 0 评论 -
adb安装及简单使用
一、安装adb把adb安装包的文件放到C:\Windows\System32下修改adb在所有目录下都可以执行添加环境变量(set path=%path%;C:\Windows\System)或(在“电脑”->“属性”->“高级系统设置”->“环境变量”->“系统变量”->“path”添加adb.exe所在绝对路径)测试安装成功:adb devices原创 2014-06-27 09:25:35 · 17364 阅读 · 0 评论 -
JNI学习及jdk安装环境变量配置
1、配置环境变量vi $HOME/.bashrc(打开终端启动)或 /etc/profile(开机启动)添加:export JAVA_HOME=/usr/jvm/jdk1.8(jdk的) export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib export PATH=$原创 2014-06-30 14:29:13 · 7625 阅读 · 0 评论 -
Android下开机自启动C程序
本文简单介绍下在Android开机自启动C程序方法,在C程序由于某种原因退出时,并能重新启动,在不使用rild的功能的条件下,如果使用rild功能,则更改一下相应的服务即可,或者自己添加一个简单的服务。原创 2015-11-18 16:51:41 · 6616 阅读 · 0 评论 -
Android4.4屏幕不休眠&不锁屏
首先还是要修改defaults.xml文件里def_screen_off_timeout的值。1. 修改default值,不自动休眠 /frameworks/base/packages/SettingsProvider/res/values/defaults.xml 修改def_screen_off_timeout为-12.修改frameworks/b原创 2016-12-15 16:15:07 · 4743 阅读 · 0 评论 -
Android下Linux内核网卡驱动移植
1.下载最新的rtl8188cu的linux驱动: 下载页面:http://www.realtek.com/downloads 也可在这里下载:http://download.csdn.net/detail/hanbo622/9725813 2.解压缩下载的文件,把驱动文件rtl8192cu.zip(xxx是版本号)添加到要编译的内核树里面去 (1原创 2016-12-30 17:53:18 · 9004 阅读 · 2 评论 -
修改Android开机图片、动画、声音
所需资源下载地址:http://download.csdn.net/detail/hanbo622/9725818一、修改第一张图片 1、将"png-24"格式的图片转换成raw格式(linux下的ImageMagick自带的convert命令,否则执行sudo apt-get install imagemagick) convert -depth 8 logo.png rg原创 2016-12-30 18:04:16 · 6979 阅读 · 0 评论 -
android下调试声卡驱动之总结
1、在调试中出现问题后,首先看I2C通信有没有问题,wm8960寄存器的设置是靠I2C来完成,另外I2C通信不成功在开发板中是没 有声卡相关的设备节点。 a、首先查看Machine代码中的I2C的序号、名字和地址与DSP代码中I2C的序号、名字和地址是否相对应。 b、用示波器测量I2C的两根数据线SCLK、SDIN的波形。 c、可以先测试一下w原创 2015-03-28 18:58:37 · 12415 阅读 · 0 评论 -
android下调试声卡驱动之wm8960介绍二
三、LINPUT输入通道介绍 有关LINPUT的主要配置如下: R32的bit8(LMN1)置1:LINPUT1连接PGA; R00的bit7(LINMUTE)置0:禁止静音; R25的bit5(AINL)置1:PGA使能; R47的bit5(LMIC)置1:Left Bo原创 2015-03-28 18:24:22 · 10917 阅读 · 0 评论 -
android下调试声卡驱动之wm8960介绍一
经过了一段时间的Android下wm8960驱动的调试,终于实现录音和播放功能了,在调试过程中有了一些心得,与大家分享一下,由于能力有限,错误之处还望海涵和指教。一、总述 wm8960芯片的使用其实就是对该芯片寄存器的设置,要实现的每个功能在芯片内部都是每一个通道,也就是数据从输入端流进沿着你设置的通道从输出端流出,如下图的芯片内部图和通道事例。原创 2015-03-28 18:03:21 · 16769 阅读 · 3 评论 -
android下调试声卡驱动之Machine部分
本文介绍的代码是在CPU(imx6)和Codec(wm8960)上做的调试并且Codec做主模式,在“概篇”中提到Codec部分、Platform部分代码由设备原厂提供和系统提供,所以我们在声卡调试中需要做的只有Machine部分,其他代码在需要的情况下略做微调即可,调试过程中还要注意在BSP文件里配置好I2S(SSI和AUD复用)。1、imx_hifi_hw_params函数介绍原创 2015-03-23 12:33:30 · 12118 阅读 · 0 评论 -
android下调试声卡驱动之I2S音频通信
一、I2S概述 I2S(Inter—IC Sound)总线是飞利浦公司为数字音频设备之间的音频数据传输而制定的一种总线标准,该总线专责于音频设备之间的数据传输。由4条线组成的数字音频接口,常用于HiFi,STB便携设备。Tx 和Rx信号线用于音频传输。而位时钟和左右时钟(LRC)用于同步链接。I2S具有灵活性,因为控制器和解码器都可以控制位时钟和左右时钟。位时钟因采样率和原创 2015-03-21 11:17:49 · 15192 阅读 · 0 评论 -
android下调试声卡驱动之概述
在Android中音频系统使用的是ALSA系统架构。ASoC--ALSA System on Chip ,是建立在标准ALSA驱动层上,为了更好地支持嵌入式处理器和移动设备中的音频Codec的一套软件体系,在音频设备驱动中ASoC被分为Machine、Platform和Codec三大部分。 Codec部分:负责音频解码,这部分代码完全无平台无关(设备原厂提供),它包含了一些音频的原创 2015-03-19 10:45:53 · 10557 阅读 · 0 评论 -
android下调试3G之Ril库分析
Android RIL (Radio Interface Layer)提供了Telephony服务和Radio硬件之间的抽象层。RIL负责数据的可靠传输、AT命令的发送以及response(响应)的解析。一般的,应用处理器(AP)通过AT命令集与无线通讯模块(基带/BP)通信。通信的方式又分为主动请求的request(诸如拨号、发短信……),以及Modem主动上报的例如信号强度、基站信息、来电、来短信等,称之为unsolicitedresponse(未经请求的响应)。系统框架如下图:原创 2015-01-08 09:30:07 · 10679 阅读 · 0 评论 -
android下调试3G之自动拨号
本章简单讲述下android实现自动拨号的功能,该功能利用了系统启动的rild的服务来实现,因为rild的服务是杀不死的,所以利用这一点,可以使拨号失败或网络断掉后自动重拨,来增强上网的可靠性。这里只实现拨号功能,把ril库实现的一些功能都去掉了。原创 2014-11-11 11:29:06 · 10211 阅读 · 2 评论 -
android下调试3G之手动拨号
当板子识别3G的USB串口设备时,在/dev下会看到ttyUSB0、ttyUSB1、ttyUSB2、ttyUSB3设备文件,就可以进行调试了。在拨号前还需要了解下模块USB串口的各个功能,比如中兴MG3732:Modem—ttyUSB3、AT—ttyUSB0、Debug—ttyUSB2、VoUSB—ttyUSB1,所以这里ttyUSB3用于拨号口,用的移动2G的卡。一、在板子的 /etc/pp原创 2014-11-11 09:20:31 · 8769 阅读 · 0 评论 -
android下调试3G之gpio控制3G上电
如果是自己开发的板子,需要用GPIO引脚控制3G模块开机/关机时,下面的文章会对你有所帮助,是以处理器IMX6和中兴MG3732模块为例介绍。一、引脚连接 处理器的gpio3_GPIO[9]连接3G模块的ON/OFF(29)引脚来控制3G的开机/关机。二、开关机条件 给ON/OFF引脚连续2500~3500毫秒低电平则开机,给再ON/OFF引脚连续2500~原创 2014-10-31 15:54:55 · 7694 阅读 · 0 评论 -
android下调试3G之模块设备识别
3G模块设备和Android系统主要通过USB接口进行数据通信。Android系统上的Linux内核需要根据3G模块设备上报的USB设备接口加载USB驱动,USB驱动正确加载后,3G模块才能正常工作。下面以添加华为模块设备识别为例: 一、修改 .../kernel/drivers/usb/serial/option.c文件 1、在option_probe()函数内添加红色框部原创 2014-10-31 09:34:04 · 9537 阅读 · 0 评论 -
android下调试3G之USB串口驱动集成配置
一、修改Android内核的编译配置 vi ~/myandroid/kernel_imx/.config文件中,确保下面的的配置项已经被选定。 (假如源码在~/myandroid目录下) 1、 USB电源管理特性的相关配置项: CONFIG_USB_SUSPEND=y 2、 USB串口驱动相关的配置项:原创 2014-10-29 18:48:48 · 9560 阅读 · 0 评论 -
SPI模块的JNI方法提供Java访问HAL层服务接口
1、在frameworks/base/services/jni下创建spijni文件夹。2、在原创 2014-08-30 16:07:08 · 9912 阅读 · 0 评论 -
SPI模块的HAL访问Linux内核驱动程序
/* ************************************************************************ * Filename: com_android_server_SpiService.cpp * Description: * Version: 1.0 * Created: 2原创 2014-08-30 15:26:56 · 6908 阅读 · 0 评论