自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(67)
  • 资源 (6)
  • 收藏
  • 关注

原创 Android-Log分析:addr2line分析运行停止问题

    对运行停止Crash问题进行分析时,可通过addr2line来对backtrace进行问题定位。如下以蓝牙停止运行为例:蓝牙接收文件概率性出现“蓝牙共享停止运行”,打印Logcat如下:--------- beginning of crash01-18 16:53:36.984  1245  1271 F libc    : system/bt/hci/src/hci_hal_h...

2018-10-27 14:46:48 1073

转载 Android GpioService从app到驱动

因为最近项目Android要用到APP控制相关GPIO控制,因为网上大部分都是app直接通过JNI控制GPIO,这样做存在一个问题,GPIO被多个app打开会报错。同时也违背了Android设计初衷。这里demo也是从其他项目拷贝过来的。自己修改的。源码使用的是Android 5.1 的rk3288.使用控制led灯的方式来实现gpioservice。通过JNI方式一般流程是app->...

2018-10-05 10:57:45 836

转载 DEVICE_ATTR的使用

使用DEVICE_ATTR,可以在sys fs中添加“文件”,通过修改该文件内容,可以实现在运行过程中动态控制device的目的。类似的还有DRIVER_ATTR,BUS_ATTR,CLASS_ATTR。这几个东东的区别就是,DEVICE_ATTR对应的文件在/sys/devices/目录中对应的device下面。而其他几个分别在driver,bus,class中对应的目录下。这次主要介...

2018-10-05 10:34:10 802

原创 Ubuntu系统下切换Openjdk7和Openjdk8

随着Android版本的更新,Ubuntu下的Jdk版本也相应随之增多。    Android6.0及以下用的是Openjdk7,而Android7.1则需用Openjdk8。同一个Ubuntu系统下往往需要安装多个版本的Jdk,以适配置不同的Android版本。现在按当前的以验记录下Openjdk版本的切换。(一)若切换至Openjdk8第一步:sudo gedit /etc/pro

2017-06-05 20:35:19 5222

原创 repo sync同步出错问题

今天repo sync rk3126_android7.1_beta_20170305的时候,提示 error: .repo/manifests/: contains uncommitted changes.这让我想起在第一次解压SDK后同步编译时,因为有一个kernel报错,当时的错误是:"android/platform/prebuilts/qemu-kernel" not a valid

2017-06-05 20:00:44 8803

原创 Ubuntu12.04安装配置OpenJDK8

Android7.1 系统编译依赖于 JAVA 8,编译之前需安装 OpenJDK。第一步:下载jdk-8u91-linux-x64.tar.gz安装包,解压到/usr/lib/jvm/目录下,解压即安装。对解压出来的文件,改名字: cp -r jdk1.8.0_91 java-8-openjdk-amd64       注:安装包在我的博客资源里可下载。第二步:配置JDK环境

2017-06-02 20:45:43 2726

转载 MT6575驱动调试笔记

一、配置GPIO通过工具:mediatek/source/dct/DrvGen.exe配置并替换dws文件:mediatek/custom/bbk75_emmc_gb2/kernel/dct/dct/codegen.dws配置GPIO的主要目的是使系统在uboot,甚至preloader阶段时保持BB管脚的状态;在kernel启动阶段加载驱动模块时,不少驱动是会重新设置其用的g

2017-04-11 11:25:28 1386

原创 MTK SmartPhone Record-(6)+驱动文档总结

========================================== Driver start =======================================在/mediatek/custom下会有好多重名的文件,在不同的文件夹里,最终会编译哪个文件是根据目录的优先级来判断 brighter89_evdo_jb2 > mt6589 > common

2017-04-11 11:20:08 1400

原创 MTK SmartPhone Record-(5)

1. 把设置菜单下的黑色背景换成图片显示,修改如下: (1)找开 \packages\apps\Settings\AndroidManifest.xml 文件,找到 Setting菜单的主题android:theme="@android:style/Theme.Holo"(2)找开 \frameworks\base\core\res\res\values\themes.xml 文件,找

2017-04-11 11:16:21 1573

原创 MTK SmartPhone Record-(4)

1.MT6572修改蓝牙名称若修改上层无效的话,则改底层。上层:\mediatek\frameworks-ext\base\core\jni\android_bluetooth_common.h修改: #define BTMTK_ANDROID_DEFAULT_LOCAL_NAME "ANDROID BT"底层:\mediatek\config\common\custom.conf

2017-04-11 11:10:14 894

原创 MTK SmartPhone Record-(3)

51. 如何使得用户在将预置的 APK 卸载后,恢复出厂设置时能恢复?为了让用户在将预置的 APK 卸载后,恢复出厂设置时能恢复,敝司做了一个 Feature,但在ALPS.GB.TDFD.MP.V1.7和 ALPS.GB.FDD2.MP.V4.7版本后支持,若贵司版本低于此版本,请申请 Patch ALPS00092543;大致的做法是:- 在out/target/product/p

2017-04-11 11:04:26 891

原创 MTK SmartPhone Record-(2)

21. Android来电过程函数调用1) InCallScreen.java1.1) 执行handlerMessage()方法,可能是由后台程序触发的。1.2) 执行onPhoneStateChanged()方法,由1.1)的handlerMessage()方法调用。1.3) 执行1.1)--1.2)2) CallNotifier.java2.1) 执行handler

2017-04-11 11:03:07 852

原创 MTK SmartPhone Record-(1)

1.参考资料网站: http://www.verydemo.com语言、国家代码: http://www.w3.org/WAI/ER/IG/ert/iso639.htm2.请教修改cpu显示单核变四核的问题 我这边搞定的方法给大家分享下:在/alps/kernel/drivers/base下面-搜索SYSDEV_CLASS_ATTR(kernel_max在同样的地方添加

2017-04-11 10:29:22 2289

原创 Driver:硬件原理补充(2)

1.回顾调Stk3311光感 (1)dts配置stk3311@48 {compatible = "stk,stk3311";reg = ; //addrinterrupt-parent = ;interrupts = ;//3:gpio口, 4:中断方式gpios = ;  /* SGPIO0, low active; AUXIN2 */near_thr

2017-04-07 20:02:55 1111

原创 Driver:硬件原理补充(1)

1差分信号,是驱动器端发送两个等值、反相的信号,接收端通过比较两个电压的差值来判断逻辑状态“0”还是“1”。而承载差分信号的那一对走线就称为差分走线。简而言之,是一对大小相等而极性相反的对称信号。作用:差分信号互相参考,没有公共地,可以有效抵制共模干扰。2.稳压IC:TCS2105-E33   作用:只有SER_RST0使能拉高,VCC3V3才会有电压。     如下图所示

2017-04-06 21:00:30 456

原创 驱动相关命令

1.uname命令  uname命令用于打印当前系统相关信息(内核版本号、硬件架构、主机名称和操作系统类型等)。  uname(选项)  -a或--all:显示全部的信息; -m或--machine:显示电脑类型; -n或-nodename:显示在网络上的主机名称; -r或--release:显示操作系统的发行编号; -s或--sysname:显示操作系统名称;

2017-04-05 21:02:48 860

原创 对中断的理解

1.中断是一种可以使CPU和硬件设备进行通信的技术。例如,当我们在敲击键盘时,键盘控制器(控制键盘的硬件设备)会发送一个中断,通知操作系统有键按下。从本质上说,中断是一种特殊的信号,由硬件设备向CPU发送。当CPU接收到中断信号后,就会马上通知操作系统此信号的到来,然后由操作系统负责处理这些新到来的数据。2.中断请求:不同的设备对应的中断不同,每一个中断都通过一个唯一的数字标识。这些数字表示的

2017-04-05 16:03:13 15010 1

原创 如何学习Android驱动开发

如何成为一名优秀的Android驱动程序员?参数如下要求:一、Android驱动的基础知识1.Android驱动是基于Linux驱动,强烈推荐阅读Linux Device Driver 3rd版,这本书讲了Linux下设备驱动的基础知识,要求反复细读。2.能读懂和编写一些C程序。3.能懂Java基础,因为Framework层的代码与驱动代码联系比较紧密,稍懂一些Java代码,会发现

2017-04-05 14:50:38 11578

转载 Android开发:bindService的使用方法

http://blog.csdn.net/zhou_wenchong/article/details/51302574bindService用于绑定一个服务。这样当bindService(intent,conn,flags)后,就会绑定一个服务。这样做可以获得这个服务对象本身,而用startService(intent)的方法只能启动服务。    bindService方式的一般过程:

2017-04-01 10:21:41 933

转载 快速简单理解i2c标准协议

http://blog.csdn.net/k_linux_man/article/details/7224810对于嵌入式开发的朋友来说,I2C协议实在是再熟悉不过了,有太多的器件,采用的都是通过I2C来进行相应的设置。今天,我们就随便聊聊这个I2C协议。      I2C协议中最重要的一点是I2C地址。这个地址有7位和10位两种形式。7位能够表示127个地址,而在

2017-03-08 20:01:41 440

转载 Android开发:Handler、Looper、MessageQueue

Android系统主要通过MessageQueue、Looper和Handler三个类来实现Android应用程序的处理消息机制。---参考罗升阳书集MessageQueue:用来描述消息队列。Looper:用来创建消息队列,以及进入消息循环。Handler:用来发送消息和处理消息。//Handler在Android中很常用,或是用来更新UI,或是派发任务给子线程去执行,也可用

2017-03-03 18:18:07 508

转载 Android开发:Service和Thread的关系

以下是转载,抱歉,没找到原创链接...不少Android初学者都可能会有这样的疑惑,Service和Thread到底有什么关系呢?什么时候应该用Service,什么时候又应该用Thread?答案可能会有点让你吃惊,因为Service和Thread之间没有任何关系!之所以有不少人会把它们联系起来,主要就是因为Service的后台概念。Thread我们大家都知道,是用于开启一个

2017-03-01 16:50:39 833

转载 Android-Framework:Sensor框架Framework层解读

http://blog.csdn.net/u010164190/article/details/51946671Sensor整体架构  整体架构说明黄色部分表示硬件,它要挂在I2C总线上红色部分表示驱动,驱动注册到Kernel的Input Subsystem上,然后通过Event Device把Sensor数据传到HAL层,准确说是HAL从Event读绿色部分表

2017-02-24 20:16:24 991

转载 Android-Framework层理解(1)

http://blog.csdn.net/lyjit/article/details/52472623不管你是做手机系统开发还是APP开发,Framework层你肯定会碰到。除非你所做的事情只是UI的优化。   那么Framework具体的工作是做什么呢? 简单一句话:提供Android开发人员一系列的服务和API的接口。   关于API接口如何查看:如何查看Android API文档

2017-02-24 17:24:09 654

转载 Android开发:Handler的使用(三)

http://blog.csdn.net/dengxiayehu/article/details/6400995Android开发:Handler的使用(三)d、自己创建新的线程,然后在新线程中创建Looper,主线程调用子线程中的发消息方法,将消息发给子线程的消息队列。[java] view plain copypack

2017-02-18 14:49:34 344

转载 Android开发:Handler的使用(二)

http://blog.csdn.net/dengxiayehu/article/details/6400981Android开发:Handler的使用(二)2、sendMessage版本的Handler的使用      这里介绍几种模型: a、默认的Handler(消息处理队列挂在主线程上)[java] view plain copyp

2017-02-18 14:48:21 228

转载 Android开发:Handler的使用(一)

http://blog.csdn.net/dengxiayehu/article/details/6398648Handler的使用(一)一个Handler允许你发送和处理消息(Message)以及与一个线程的消息队列相关的Runnable对象。每个Handler实例都和单个线程以及该线程的消息队列有关。当你创建了一个新Handler,它就会和创建它的线程/消息队列绑定,在那以

2017-02-18 14:47:10 289

转载 Android开发:Environment类的接口详解

Android应用开发中,常使用Environment类去获取外部存储目录,在访问外部存储之前一定要先判断外部存储是否已经是可使用(已挂载&可使用)状态,并且需要在AndroidManifest.xml文件中添加外部存储读和写的权限。Environment类中提供了几个静态常量用于标识外部存储的状态,这些状态都是String类型MEDIA_BAD_REMOVAL 在没有挂载前存储媒体已

2017-02-17 10:05:34 2539

原创 Android开发:getContentResolver的使用

getContentResolver的使用 分两种情况:一、在有Activity和Service的情况下  getContext().getContentResolver().insert(...);1.getContext()是获得一个上下文对象(Context),一般在四大组件中都会获取上下文对象。 2.在Activity和Service中,就没必要获取Context了,因

2017-02-16 17:14:39 56061 1

转载 Android开发:Service的远程调用

原文http://liangruijun.blog.51cto.com/3061169/653344   在Andorid平台中,各个组件运行在自己的进程中,他们之间是不能相互访问的,但是在程序之间是不可避免的要传递一些对象,在进程之间相互通信。为了实现进程之间的相互通信,Andorid采用了一种轻量级的实现方式RPC(Remote Procedure Call 远程进程调用)来完

2017-02-11 10:58:31 778

原创 时间管理的“青蛙法则”

下文阐述了一个看起来很简单的时间管理办法,但读完之后会真正实践的人可能并不多,知道方法之后结合自己行动是产生变化的关键。读文之前先准备好纸笔,仔细想想下文开头的那个问题并把答案写下来是行动的第一步。本文来源于财富中文网。——————————————————————每天的时间似乎永远也不够用,不足以让我们完成所有想完成的事情。那么,为什么有些人总能更有效地利用时间,从而取得比其他人更大的

2017-01-18 17:47:28 1240

转载 I2C设备驱动的编写(二)

前面我们说了如何I2C用户模式驱动,这种驱动基于I2C子系统,但是他对于应用程序开发人员的要求较高,需要应用程序开发人员了解硬件的一些东西,比如时序,地址等等,而多数时候应用程序开发人员是按照操作文件的方法操作设备,所以我们更希望用一些更简单的接口去访问。也就是我们今天的内容——基于I2C子系统的字符驱动。I2C子系统的代码分为三部分如图:Host:主机控制器驱动D

2017-01-12 18:52:50 342

转载 I2C设备驱动的编写(一)

作者:曹忠明,华清远见嵌入式学院讲师。I2C总线是有Philips公司开发的,它是一种比较简单的总线,接线简单:只有两根线数据线(SCL)和时钟线(SDA),控制简单。所以一些封装较小的器件多使用I2C总线,常见的使用I2C总线的设备有EEPROM、rtc及一些传感器。这里我们介绍下基于linux的I2C设备驱动的编写。I2C设备驱动的编写有多种方式:一种是直接操作CPU的

2017-01-12 18:51:44 443

原创 INIT_DELAYED_WORK和INIT_WORK定时器中断函数

一、初始化:static int stk3311_probe(struct i2c_client *client,                         const struct i2c_device_id *id){......INIT_DELAYED_WORK(&work,stk3311_update); //stk3311_update是中断函数

2017-01-12 18:26:21 7071

转载 MTK调试gprs,即socket通信

转 http://blog.csdn.net/maple_wei/article/details/7564739一、添加新文件:新建TicketSocket.c 文件到..\plutommi\mmi\TicketApp\TicketAppSrc目录下二、将文件添加工程里:在文件..\make\plutommi\mmi_app中添加如下文件信息plutommi\mmi\Ticke

2017-01-09 17:05:23 2529

转载 MTK串口通信调试

转 http://blog.csdn.net/maple_wei/article/details/7564750一、说明:1、添加新文件:在..\plutommi\mmi\TicketApp\TicketAppSrc\下添加文件CosUart.c2、将新添加的文件加入到工程中:在文件..\make\plutommi\mmi_app中添加如下文件信

2017-01-09 17:00:38 708

转载 内存调试

转载请注明出处:http://blog.csdn.net/jscese/article/details/37928823一.调试准备首先需要开启Android系统的adb功能,start adbdPC端 adb connect IP ADDRESS 如果 出现adb 异常可以尝试 adb kill-server ; adb start-server

2016-12-16 15:29:44 383

转载 建立最简单的repo服务器实例讲解

http://blog.csdn.net/21cnbao/article/details/7272708repo是一个将多个git tree进行系统管理的工具,repo本身不是一个源代码版本管理系统,它只是联合manifest.git中project list xml的多个工程,统一管理。在运行repo sync的情况下,xml文件中指定的工程都统一被sync下来。下面用最简单

2016-12-14 11:21:51 554

转载 深入理解指针函数

文章来自http://blog.sina.com.cn/s/blog_5e8facd20100qn20.html1.指针函数的定义    顾名思义,指针函数即返回指针的函数。其一般定义形式如下:       类型名 *函数名(函数参数表列);    其中,后缀运算符括号“()”表示这是一个函数,其前缀运算符星号“*”表示此函数为指针型函数,其函数值为指针,即它带回来

2016-11-21 15:08:17 253

转载 C语言中数据类型的本质含义是:表示一个内存格子的长度和解析方法

转载 http://www.cnblogs.com/schling/p/5931291.htmlC语言中数据类型的本质含义是:表示一个内存格子的长度和解析方法。数据类型决定长度的含义:我们一个内存地址(0x30000000),本来这个地址只代表1个字节的长度,但是实际上我们可以通过给他一个类型(int),让他有了长度(4),这样这个代表内存地址的数字(0x30000000)就能

2016-11-21 10:02:17 831

MTK平台camera(摄像头)调试教程

MTK平台camera(摄像头)调试教程,介绍Camera在MTK平台上的调试流程。

2017-05-23

手势光感翻页(优化)

手势光感翻页(优化)

2016-11-09

Settings下添加菜单

Settings下添加菜单

2016-11-09

5秒自动灭屏

Android系统实现5秒自动灭屏功能。

2016-11-09

S4_光感左右翻页

通过光感,实现Launcher界面左右手势翻页。

2016-11-09

仿Iphone5S后台任务管理

2016-11-09

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除