自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(362)
  • 资源 (96)
  • 收藏
  • 关注

转载 android.mk中几个常见配置

1.LOCAL_JACK_ENABLED这个变量可以禁止使用Jack编译工具链编译该模块。在工作中,个人感觉目前jack工具链不是很稳定,经常会出现一些错误,比如:ERROR: Security problem, see Jack server log (/tmp/jack-liujinwei/jack-8072.log)这个时候,我就会在Android.mk中禁止该工具链。禁止方法如下:LOCAL_JACK_ENABLED := disabled2.LOCAL_DEX_...

2020-10-26 17:13:10 400

转载 android IBinder 解析

http://home.lupaworld.com/home-space-uid-42237-do-blog-id-232429.html远程对象的基础接口,是一个为了在执行进程中和进程间调用时的高性能,而设计的轻量级远程调用机制的核心部分。这个接口描述了和远程对象交互的抽象协议。不要直接实现这个接口,而是通过继承Binder来实现。IBinder的关键API是与Binder.onTransact()相匹配的transact().这个方法分别允许你给IBinder对象发出一个请求,并接收一个...

2020-10-19 17:19:29 1868

转载 理解Java内存模型

Java内存模型即Java Memory Model,简称JMM。JMM定义了Java 虚拟机(JVM)在计算机内存(RAM)中的工作方式。JVM是整个计算机虚拟模型,所以JMM是隶属于JVM的。如果我们要想深入了解Java并发编程,就要先理解好Java内存模型。Java内存模型定义了多线程之间共享变量的可见性以及如何在需要的时候对共享变量进行同步。原始的Java内存模型效率并不是很理想,因此Java1.5版本对其进行了重构,现在的Java8仍沿用了Java1.5的版本。关于并发编程在并发...

2020-09-27 17:30:53 230

转载 Android权限动态权限修改和其他的Android配置修改

[Framework] 全方位理解Android权限之Android权限系统1系列目录请点击这里:全方位理解Android权限因为东忙西忙没时间整理这一块的东西,拖了有点久,现在继续更新权限的性质我们知道,Android应用都运行在沙盒中,默认情况下这些应用只能访问他们自己的域,即自己的文件和非常少量的系统服务。为了能够和系统或者其他应用交互,app就需要申请额外的一些权限。permission(权限)实际上就是一个简单的字串,申明需要做哪些类型的操作。比如文件读权限就是这么一个字.

2020-09-21 15:25:28 4892 1

转载 5种必会的Java异步调用转同步的方法你会几种

Sunny先来说一下对异步和同步的理解:同步调用:调用方在调用过程中,持续等待返回结果。 异步调用:调用方在调用过程中,不直接等待返回结果,而是执行其他任务,结果返回形式通常为回调函数。其实,两者的区别还是很明显的,这里也不再细说,我们主要来说一下Java如何将异步调用转为同步。换句话说,就是需要在异步调用过程中,持续阻塞至获得调用结果。 不卖关子,先列出五种方法,然后一一举例说明:使用wait和notify方法 使用条件锁 Future 使用CountDownLatch...

2020-09-14 18:20:09 282

转载 2020-08-12

开机默认壁纸加载流程分析标签(空格分隔): Android开发[参考资料]Android壁纸开发流程分析android壁纸服务流程浅析深入理解Android卷III 第八章深入理解Android壁纸开机默认壁纸加载流程分析 开机加载壁纸 Step 1. new WallpaperManagerService() Step 2. getWallpaperDir() Step 3. loadSettingsLocked() Step 4. wallpaperF.sy.

2020-08-12 16:40:40 139

转载 /PROC/MEMINFO之谜

转至:http://linuxperf.com/?p=142/proc/meminfo是了解Linux系统内存使用状况的主要接口,我们最常用的”free”、”vmstat”等命令就是通过它获取数据的 ,/proc/meminfo所包含的信息比”free”等命令要丰富得多,然而真正理解它并不容易,比如我们知道”Cached”统计的是文件缓存页,manpage上说是“In-memory  cach...

2018-11-16 18:03:49 442

转载 dumpsys命令用法

一、 概述1.1 dumpsys命令用法可通过dumpsys命令查询系统服务的运行状态(对象的成员变量属性值),命令格式:dumpsys 服务名, 例如:dumpsys activity //查询AMS服务相关信息dumpsys window //查询WMS服务相关信息dumpsys cpuinfo //查询CPU情况dumpsys meminfo //查询内存情

2018-02-03 16:25:42 6214 1

转载 adb shell dumpsys SurfaceFlinge 分析

对于很多Android的显示问题,我们需要使用adb shell dumpsys SurfaceFlinger命令来获取SurfaceFlinger的dump信息,这对于我们分析问题有很大的帮助,因此我们这里来详细讲解下SurfaceFlinger的dump.SurfaceFlinger的dump信息主要通过dumpAllLocked 函数来获取,因此我们这里就以android 5.0在主

2018-02-03 16:17:30 6105 1

转载 shell 脚本通过 dumpsys SurfaceFlinger --latency 数据计算 FPS 和评价流畅度。

由于采购机械臂测试性能用例和屏幕实际帧率变化,最终工具方案实现后搁置,拿出来”晒晒“。一、设计初衷1、面临用户和公司内领导试用中反馈的卡顿问题,思考如何能有效量化评估?2、如何在尝试复现卡顿的过程中持续监控FPS和丢帧情况?二、设定预期倒推查找解决方案1、无root权限限制,可直接采集数据计算FPS、丢帧率、最大单帧间隔。2、控制脚本影响,不要使监控脚本成为

2018-02-03 16:15:08 8920 2

转载 通过 dumpsys SurfaceFlinger 分析Android 系统图层

一、通过 dumpsysSurfaceFlinger 分析Android 系统图层:从下面的dumpsys log看出当前系统有三个图层(红色部分是每个图层的坐标和大小),从最底层到上层分别是ImageWallpaper(壁纸), SurfaceView(视频小窗口), launcher(桌面)。其中视频小窗口用Overlay的方式独立输出到视频层,这样的话只有壁纸层和桌面层通过GPU混合

2018-02-03 16:13:46 4072

转载 Android CPU使用率

本文包含以下内容: 1.介绍常见的获取android cpu使用率的方法 2.介绍这些常见方法背后的原理 3.介绍我自己写的一个脚本,这个脚本可以获取各个线程在cpu各个核上的占用率一、常见的获取Android CPU使用率方法及其原理首先说一下如何查看cpu的基本信息,相信很多人也知道,使用下面的命令即可adb shell cat /proc/cpuinfo比如我

2018-01-09 14:39:53 7179 1

转载 理解Android编译命令

一、引言关于Android Build系统,这个话题很早就打算整理下,迟迟没有下笔,决定跟大家分享下。先看下面几条指令,相信编译过Android源码的人都再熟悉不过的。source setenv.shlunchmake -j12记得最初刚接触Android时,同事告诉我用上面的指令就可以编译Android源码,指令虽短但过几天就记不全或者忘记顺序,每次编译

2017-12-13 15:47:34 219

转载 Android源代码编译命令m/mm/mmm/make分析

Android源代码编译命令m/mm/mmm/make分析        在前文中,我们分析了Android编译环境的初始化过程。android编译环境初始化完成后,我们就可以用m/mm/mmm/make命令编译源代码了。当然,这要求每一个模块都有一个Android.mk文件。Android.mk实际上是一个Makefile脚本,用来描述模块编译信息。Android编译系统

2017-08-15 22:35:04 638

转载 理解 Android Build 系统

理解 Android Build 系统WeiboGoogle+用电子邮件发送本页面前言Android Build 系统是 Android 源码的一部分。关于如何获取 Android 源码,请参照 Android Source 官方网站:http://source.android.com/source/downl

2017-08-15 22:31:41 341

转载 Android自动化测试-Monkey性能测试

Android自动化测试-Monkey性能测试一、Monkey简介Android的SDK 里面,Monkey的tools是一个命令行工具,当连接Android设备时,只要在命令行里输入相应命令就能运行tools;Monkey test是一项压力测试,可以在规定的次数范围内做任何随机的操作,随机操作包括点击、滑动、Application切换、横竖屏、应用关闭等等,用户能做

2017-07-26 14:41:07 595

转载 Android内核分析系统的启动log

本文是《Android内核开发》系列的第八篇文章,本文主要关注如何分析Android系统的启动log,学会通过搜索重要的TAG标签,找到Android启动过程中的重要节点。要学会分析系统的启动log信息,首先得了解Android系统的启动过程,建议先阅读《Android内核开发:图解Android系统的启动过程》这篇文章,它详细介绍了Android系统的启动过程。其次,你需要知

2017-07-20 15:40:36 859

转载 WatchDog工作原理

一、概述Android系统中,有硬件WatchDog用于定时检测关键硬件是否正常工作,类似地,在framework层有一个软件WatchDog用于定期检测关键系统服务是否发生死锁事件。WatchDog功能主要是分析系统核心服务和重要线程是否处于Blocked状态。监视reboot广播;监视mMonitors关键系统服务是否死锁。二、WatchDog初始化2.1 st

2017-07-19 17:58:25 3139

转载 dumpsys介绍

目录1. 概要2. 工作原理2.1 dumpsys的代码逻辑2.2 系统服务的dump方法3. 解析dumpsys输出请尊重原创版权,转载注明出处。1. 概要dumpsys是Android提供的系统工具,可以用来查看所有系统服务的信息。在命令行输入如下命令,就可以罗列出当前所有的系统服务名:$ adb shell dumpsys -lCurre

2017-07-19 17:34:55 932

转载 Watchdog机制以及问题分析

目录1. 概览2. Watchdog机制2.1 Watchdog的初始化2.2 添加Watchdog监测对象2.3 Watchdog的监测机制3. 问题分析方法3.1 日志获取3.2 问题定位3.3 场景还原4. 实例分析5. 总结请尊重原创版权,转载注明出处。1. 概览Watchdog的中文的“看门狗”,有保护的意思。最早引入Watchdo

2017-07-19 17:31:28 1368

转载 Android日志系统(logging system)详解

Android日志系统详解  How to debug with Android logging  怎么抓取Android日志文件  不管是做Android应用还是做Android中间层和底层,Logging系统都是必须要了解的;因为Android不像单片机程序UCOS那么简单,可以很方便的单步调试。所以,就准备用一篇blog来分析一下logging system。概览

2017-07-19 16:56:46 8929

转载 Android应用程序框架层和系统运行库层日志系统源代码分析

在开发Android应用程序时,少不了使用Log来监控和调试程序的执行。在上一篇文章Android日志系统驱动程序Logger源代码分析中,我们分析了驱动程序Logger的源代码,在前面的文章浅谈Android系统开发中Log的使用一文,我们也简单介绍在应用程序中使Log的方法,在这篇文章中,我们将详细介绍android应用程序框架层和系统运行库存层日志系统的源代码,使得我们可以更好地理解Andr

2017-07-19 15:53:55 333

转载 Android应用程序框架层和系统运行库层日志系统源代码分析

在开发Android应用程序时,少不了使用Log来监控和调试程序的执行。在上一篇文章Android日志系统驱动程序Logger源代码分析中,我们分析了驱动程序Logger的源代码,在前面的文章浅谈Android系统开发中Log的使用一文,我们也简单介绍在应用程序中使Log的方法,在这篇文章中,我们将详细介绍android应用程序框架层和系统运行库存层日志系统的源代码,使得我们可以更好地理解Andr

2017-07-19 15:53:54 261

转载 Android日志系统驱动程序Logger源代码分析

我们知道,在Android系统中,提供了一个轻量级的日志系统,这个日志系统是以驱动程序的形式实现在内核空间的,而在用户空间分别提供了Java接口和C/C++接口来使用这个日志系统,取决于你编写的是android应用程序还是系统组件。在前面的文章浅谈Android系统开发中LOG的使用中,已经简要地介绍了在Android应用程序开发中Log的使用方法,在这一篇文章中,我们将更进一步地分析Logger

2017-07-19 14:29:32 583

转载 Android 系统重启原因分析

重启原因分类1.上层造成重启system_server被杀watchdog重启重要线程阻塞2.kernel造成重启空指针非法地址3.kernel watchdog造成重启,原因不确定内存原因nand驱动log查看步骤及关键字1. 重启后的kernel.log或misc/cmdline.log在log最前面,会有很长的一段,如:

2017-07-19 13:58:06 9116

转载 Android的死机、重启问题分析方法

Android的死机、重启问题分析方法1.     死机现象1.1      死机定义当手机长时间无法再被用户控制操作时,我们称为死机。在这里我们强调长时间,如果是短时间,归结为性能问题。1.2      死机表现* 用户操作手机无任何响应,如触摸屏幕,按键操作等。* 手机屏幕黑屏,无法点亮屏幕。* 手机界面显示内容和用户输入不相干。1. 系统简图当用户对手机进

2017-07-19 12:02:08 1535

转载 cmd窗口进行adb logcat时出现中文乱码问题的解决办法

今天用CMD命令进行adb logcat时显示一堆的乱码,乱码如下:[plain] view plain copyC:\Users\Administrator>adb logcat -s logcat  --------- beginning of /dev/log/system  --------- beginning of /dev/lo

2017-07-19 11:25:12 2374

转载 Android音频系统之AudioTrack(二)

1.1.1 AudioPolicyService的路由实现我们在AudioPolicyService小节曾将其比作是一个“路由器”,不过还没有深入解析它是如何完成路由选择的。这部分的功能与使用者——AudioTrack有很大关联,所以我们特别将它的实现原理剖析放在这里,以使读者可以综合起来理解。路由器功能由如下几个部分组成:l  与发送方(AudioTrack)的接口

2017-07-17 23:03:51 312

转载 Android音频系统之AudioTrack(一)

1.1 AudioTrack1.1.1 AudioTrack应用实例对于Android应用开发人员来讲,音频回放最熟悉的莫过于MediaPlayer,而AudioTrack相信用的人相对会少很多。这是因为MediaPlayer提供了更完整的封装和状态控制,使得我们用很少的代码就可以实现一个简单的音乐播放器。而相比MediaPlayer,AudioTrack更为精练、高效,实际上Medi

2017-07-17 23:01:50 403

转载 Android音频系统之AudioPolicyService

1.1 AudioPolicy Service在AudioFlinger小节,我们反复强调它只是策略的执行者,而AudioPolicyService则是策略的制定者。这种分离方式有效地降低了整个系统的藕合性,而且为各个模块独立扩展功能提供了保障。1.1.1 AudioPolicyService概述汉语中有很多与策略有关联的俗语,比如“因地制宜”、“具体问题具体分析”;战争中只遵

2017-07-17 23:00:47 323

转载 Android音频系统之AudioFlinger(四)

1.1.1 AudioMixer每一个MixerThread都有一个唯一对应的AudioMixer(在MixerThread中用mAudioMixer表示),它的作用如其名所表示的,就是为了完成音频的混音操作。 图 13‑14 MixerThread示意图 如上图,MixerThread对外开放的接口主要涉及到Paramete

2017-07-17 22:58:39 362

转载 Android音频系统之AudioFlinger(三)

1.1.1 PlaybackThread的循环主体当一个PlaybackThread进入主循环后(threadLoop),音频事务就正式开启了。仔细观察的话,我们会发现这个循环中会不断地调用以“threadLoop_”开头的若干接口,比如threadLoop_mix、threadLoop_sleepTime、threadLoop_standby等等。以这样的前缀开头,是因为这些函数都是在t

2017-07-17 22:58:00 415

转载 Android音频系统之AudioFlinger(二)

1.1.1 音频设备的管理虽然AudioFlinger实体已经成功创建并初始化,但到目前为止它还是一块静态的内存空间,没有涉及到具体的工作。从职能分布上来讲,AudioPolicyService是策略的制定者,比如什么时候打开音频接口设备、某种Stream类型的音频对应什么设备等等。而AudioFlinger则是策略的执行者,例如具体如何与音频设备通信,如何维护现有系统中的音频设备

2017-07-17 22:57:13 389

转载 Android音频系统之AudioFlinger(一)

1.1 AudioFlinger在上面的框架图中,我们可以看到AudioFlinger(下面简称AF)是整个音频系统的核心与难点。作为Android系统中的音频中枢,它同时也是一个系统服务,启到承上(为上层提供访问接口)启下(通过HAL来管理音频设备)的作用。只有理解了AudioFlinger,才能以此为基础更好地深入到其它模块,因而我们把它放在前面进行分析。 1.1.1 Au

2017-07-17 22:54:00 493

转载 Android音频系统之音频框架 Linux下的音频框架

AudioFlinger在上面的框架图中,我们可以看到AudioFlinger(下面简称AF)是整个音频系统的核心与难点。作为Android系统中的音频中枢,它同时也是一个系统服务,启到承上(为上层提供访问接口)启下(通过HAL来管理音频设备)的作用。只有理解了AudioFlinger,才能以此为基础更好地深入到其它模块,因而我们把它放在前面进行分析。 1.1.1 AudioF

2017-07-17 22:49:29 814

转载 Android音频系统之音频框架

转载请注明,From LXS, http://blog.csdn.NET/uiop78uiop78/article/details/8796492Android的音频系统在很长一段时间内都是外界诟病的焦点。的确,早期的android系统在音频处理上相比于iOS有一定的差距,这也是很多专业的音乐播放软件开发商没有推出Android平台产品的一个重要原因。但这并不代表它的音频框架一无是处,

2017-07-17 16:58:23 285

转载 Android音频系统之音频基础

转载请注明:LXS, http://blog.csdn.NET/uiop78uiop78/article/details/8787779对于一部嵌入式设备来说,除了若干基础功能外(比如手机通话、短信),最重要的可能就是多媒体了——那么一个最简单的问题,什么是多媒体呢?这个术语对应的英文单词是“Multi-Media”,直译过来就是多媒体。名称就很好地解释

2017-07-17 16:56:05 446

转载 Android log文件分析

一,Bug出现了, 需要“干掉”它 bug一听挺吓人的,但是只要你懂了,Android里的bug是很好解决的,因为android里提供了LOG机制,具体的底层代码,以后在来分析,只要你会看bug,android里应用开发也就很简单了。那我们先来看看android里的ANR,怎么出现ANR呢,很简单。          # adb shell   

2017-05-05 10:00:59 467

转载 checkStyle配置说明、范例和结果分析

checkStyle配置说明、范例和结果分析  1xml version="1.0"?>  2DOCTYPE module PUBLIC  3    "-//Puppy Crawl//DTD Check Configuration 1.2//EN"  4    "http://www.puppycrawl.com/dtds/configuration_1_2.dtd">  

2017-05-03 15:41:03 3993

转载 ADB常用命令

ADB很强大,记住一些ADB命令有助于提高工作效率。获取序列号: adb get-serialno查看连接计算机的设备: adb devices重启机器: adb reboot重启到bootloader,即刷机模式: adb reboot bootloader重启到recovery,即恢复模式: a

2017-04-08 13:50:59 394

向服务器发送图片demo

向服务器发送图片,可以拍照,也可以选择相册,最多选择9张

2015-07-29

Android FlowLayout

不等宽子view自动换行控件, 所有的子view自动向左对齐

2015-07-14

guava-18.0资料

guava的相关资源,包括18.0的jar包和英文的api文档

2015-07-06

金币掉落demo

金币掉落 demo,eclipse版本的。

2015-06-02

Dialog动画效果

Dialog各种动画效果,包括2d和3d的效果都有

2015-06-01

简单个性登陆

简单个性的登陆页面, 保护头像转圈动画, 滑动登陆

2015-06-01

自定义控件ProgressBar

自定义控件ProgressBar,可以用来做为整个框的下载背景图。。。不是定义资源文件样式,不需要的不要下,免得收分后悔

2015-04-15

wifi热点工具

wifi热点工具 配置还是比较简单 我win7的机子可以用

2015-01-29

滑动关闭界面

滑动关闭界面,新建一个布局,在该布局内统一做滑动处理,创建成一个父类A,所以需要滑动关闭的界面继承该父类

2015-01-27

eoe开源客户端

eoe开源客户端 eoe.cn客户端开源之后发布的第一个版本

2014-06-27

环形进度条

自定义圆形的进度条. 可自由设置进度,步长等参数.

2014-06-18

曲线tongji图表

曲线 图表 很简单, 不过思路很清晰

2014-06-12

弧形ListView

弧形展示的ListView. 列表的中间图片显示最大,往两端越小

2014-05-20

DateUtil日期工具类

DateUtil 日期工具类

2014-05-05

网络访问框架

ion_ 网络开源框架, 功能还是比较完善的....

2014-04-02

gif 图片显示

gif的现实框架, 是个开源产品

2014-04-02

图片下载缓存

图片的下载和缓存.. 设置好图片的网络地址之后,自动下载并且缓存

2014-03-31

线性饼状柱状

线性饼状柱状 .. demo中只能在代码中查看具体实现,不能直接从demo中看到显示效果.不过控件是可用的

2014-03-31

曲线柱状统计图

分别是画曲线和柱状统计图的方法, 可以做个参考....

2014-03-24

photoshop操作手册

photoshop 操作手册 =

2014-03-06

html5:游戏水果忍者

html5 游戏 水果忍者

2014-02-25

HTML5:游戏驴子跳

HTML5 游戏 驴子跳 从代码中可以学到不少html5的内容

2014-02-25

html5:游戏 大战僵尸

html5 游戏 大战僵尸 可以从代码中学习html5游戏

2014-02-25

html5:游戏射击

html5 游戏 射击 自己从代码里面学习吧

2014-02-25

扑鱼达人 html5

html5写的 扑鱼达人游戏.. 代码量很少, 可运行... 能够学习到游戏的架构和思路.

2014-02-25

android工具

android工具包 包括更新包 界面跳转的封装 toast封装 log封装 文件工具栏...稍改即可用...自用 不喜勿要下载

2014-02-19

android开发框架

android快速开发框架.里面包括图片缓存,网络连接,文件下载,广播发送,下拉刷新listview,viewpager等...

2014-01-24

二维码实现

包括二维码拍摄和生成..使用的googel zxing的包. 老规矩,不喜欢勿喷

2014-01-24

页面跳转动画效果

页面跳转时的动画效果.具体的自己看吧,代码都是很好理解的哦

2014-01-21

音乐播放器

实现了对播放 音乐的基本控制. 上一曲 下一曲 暂停 播放 歌词显示..都是通过广播实现..简单 自己看

2014-01-21

ShareSDK分享内容

一个在移动端快速实现分享功能的工具..包括fb tw等外国网站.demo/jar都在包里供下载. 还包括详细的使用文档..可参见我转的一篇博客:http://blog.csdn.net/qeqeqe236/article/details/18218439

2014-01-13

图片处理方法

图片缩放,图片的圆角,图片倒影,旋转图片,图片反转,图片色彩饱和度亮度处理 等

2014-01-08

自动下拉刷新,加载更多

自动下拉刷新,加载更..懒人没有说明,自己看.

2014-01-08

圆形选择菜单

圆形选择菜单.又不收分,随便下吧,懒得说了.

2014-01-08

展示引导图功能

展示引导图功能 升级新功能时需要图片引导.整个一个图片浮层,好处是比较简便,可能和实际功能有出入

2014-01-06

SQLCipher加密数据库

SQLCipher加密数据库..是一个方便快捷的数据库加密解决方案,由于使用之后,apk文件会变得很大,所以谨慎使用

2013-12-31

Cool Edit Pro 中文绿色

Cool Edit Pro 中文绿色,不为了挣积分,只为了做个备份,不喜欢的不要下,下了也不要啰嗦, win7 ok, win10没有试

2017-12-06

Gradle 使用指南

Gradle 使用指南 感谢:http://blog.csdn.net/column/details/gradle-translation.html?&page=2提供的博文

2015-12-14

Gradle资料

Gradle的相关资料。不收分,就是自己留个备份。

2015-09-14

viewpager_indicator

viewpager indicator控件,可以设置indicator个数及字体颜色等。

2015-07-27

空空如也

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

TA关注的人

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