自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 收藏
  • 关注

原创 Android Systrace工具

Android Systrace工具1. systrace命令1.1 命令获取1.2 基本语法2. 报告浏览2.1 快捷键2.2 报告阅读摘抄自:https://developer.android.com/topic/performance/tracingSystrace是Android平台提供的一款用于记录短期内设备活动的工具,记录的结果会集成在一个HTML文件中。1. systrace命令1.1 命令获取Systrace工具通过systrace命令进行调用。要运行systrace命令,需要做以

2020-07-02 11:36:29 1207

转载 SEAndroid 相关知识

本文图片和内容摘自罗升阳的博客《SEAndroid安全机制框架分析》如需了解详细内容,请访问原博客。1. 整体框架SEAndroid安全机制框架SEAndroid安全机制包含有内核空间和用户空间两部分支持:在内核空间,主要涉及到一个称为SELinux LSM的模块在用户空间,涉及到Security Context、Security Server和SEAndroid Poli...

2019-12-02 16:24:14 210

原创 多点触控(MT)协议

Copyright: |copy| 2009-2010 Henrik Rydberg rydberg@euromail.se此文章为个人翻译英文文档的产物,仅当做个人笔记使用,不喜勿喷!!对于翻译内容有强迫症的读者请勿阅读此文档!!阅读过程中如有不恰当之处欢迎交流指正~~如需转载,请注明出处!介绍为了能够使用多点触控和多用户设备的全部功能,需要一种从各类触控设备报告详细数据的方法,例如...

2019-11-13 19:23:59 4498

原创 notifier通知链机制

1. 目的Linux内核中各个子系统相互依赖,当其中某个子系统状态发生改变时,就必须使用一定的机制告知使用其服务的其他子系统,以便其他子系统采取相应的措施。为满足这样的需求,内核实现了事件通知链机制(notificationchain)。2. 范围通知链只能用在各个子系统之间,而不能在内核和用户空间进行事件的通知。3. 代码位置组成内核的核心系统代码均位于kernel目录下,通知链表位于...

2019-10-11 12:04:05 945

原创 常用命令

le32_to_cpu() 将小端存储数据转为CPU适配数据cpu_to_le32() 将数据转换为小端存储be32_to_cpu() 将大端存储数据转为CPU适配数据cpu_to_be32() 将数据转换为大端存储作用:在一些对于数据的字节顺序有要求的地方,不要去假设字节序,即不要去默认CPU采用的是大端存储或者小端存储,而是采用上述的转换函数进行转换。...

2019-10-10 14:17:35 244

原创 Linux输入事件编码

Linux中的输入协议采用一系列的类型和编码向用户空间表示输入设备的值。单一的硬件事件可以产生多个输入事件,每个输入事件包含新的单个数据项值。使用一个特殊的事件类型EV_SYNC将输入事件分成不同的数据包,数据包中输入数据的改变在时间上是在同一时刻出现的。在下文中,术语“事件”是指单个输入事件,包括类型,编码和值。输入协议是一种状态性的协议,只有在事件编码的值改变之后才需要发送事件。尽管如此,...

2019-10-10 14:12:58 1791

原创 Linux中的module_init与module_exit

1. module_init与module_exit宏module_init与module_exit宏定义在include/linux/module.h文件中,部分代码如下:#ifndef MODULE/** * module_init() - driver initialization entry point * @x: function to be run at kernel boo...

2019-10-10 12:18:38 2079

原创 可变参数函数

可变参数相关的宏首先先了解几个宏:typedef __gnuc_va_list va_list;#define va_start(v,l) __builtin_va_start(v,l)#define va_end(v) __builtin_va_end(v)#define va_arg(v,l) __builtin_va_arg(v,l)这几个宏可以在stdarg.h中找到。va是...

2019-09-27 17:36:05 493

原创 DEVICE_ATTR使用

1. 作用使用DEVICE_ATTR往sysfs中为device添加“属性文件”,并对该文件添加相关操作,从而实现运行过程中动态控制device。2. 一些定义首先看一下与DEVICE_ATTR相关的宏定义,定义位置在kernel/include/linux/device.h中。#define DEVICE_ATTR(_name, _mode, _show, _store) \ ...

2019-09-20 20:09:14 1098

转载 device_init_wakeup()

device_init_wakeup()的内容如下:static inline int device_init_wakeup(struct device *dev, bool val){ device_set_wakeup_capable(dev, val); //设置设备能不能被唤醒 device_set_wakeup_enable(dev, val); //设置...

2019-09-16 20:18:37 3441

原创 git学习——rebase

问题描述随着项目的进行,我们可能会进行多次的commit,其中,可能有部分commit是没什么作用的(可能只是每天进行一次commit,防止代码丢失什么的)。对于这些无用的commit,一方面,会给查看历史和合并分支造成困难;另一方面,像我这样有强迫症的人总是想着把它清理掉。这里所说的清理指的是将多个commit合并为一个commit。如何合并多个commit呢?rebase可以实现这个功能...

2019-09-16 16:37:32 145

原创 Maven学习(三)——POM详细内容

摘自:http://www.runoob.com/maven/maven-pom.html1. POM简介POM( Project Object Model,项目对象模型 ) 是 Maven 工程的基本工作单元,是一个XML文件,包含了项目的基本信息,用于描述项目如何构建、声明项目依赖等等。所有 POM 文件都需要 project 元素和三个必需字段:groupId,artifactId,v...

2019-02-28 13:13:12 341

原创 Maven学习(二)——项目创建

1. 创建一个Maven项目当需要创建一个Maven项目是,首先定位到目标文件夹,输入以下命令:mvn archetype:generate -DgroupId={project-packaging} -DartifactId={project-name} -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=fa...

2019-02-15 20:32:14 213

原创 Maven学习(一)——简介

1. Maven简介Maven是基于项目对象模型(POM project object model),可以通过一小段描述信息(配置)来管理项目的构建,报告和文档的软件项目管理工具。Maven主要目标是提供给开发人员:项目是可重复使用,易维护,更容易理解的一个综合模型。插件或交互的工具,这种声明性的模式。Maven项目的结构和内容在一个XML文件中声明,pom.xml 项目对象模型(P...

2019-01-28 20:02:13 139

原创 Gradle学习笔记(一)

1. 整体说明Gradle使用 Groovy 语言编写脚本,用于描述构建;Gradle 中的每一个构建脚本使用UTF-8进行编码保存,并命名为 build.gradle ;Gradle脚本用于处理项目和任务;项目由不同任务组成;任务用于执行某一块工作(原子性工作),如:编译一些类、创建JAR、产生Javadoc等。2. 简单构建脚本测试新建一个build.gradle文本,并将下...

2018-12-18 21:44:49 500

原创 MPAndroidChart的使用

MPAndroidChart 时Android软件中常用的开源图表库。利用它可以绘制各类统计图表,包括线型图、饼图、柱状图等。它的github地址是:https://github.com/PhilJay/MPAndroidChart1. 线型图简单使用在项目中有用到线型图用于实时显示曲线。现对其的使用过程进行总结。在使用MPAndroidChart的线型图时,使用到的控件:<com...

2018-11-14 20:05:16 1223

原创 Android软件开发中的经验总结

1. 如何让APP不休眠在需要不休眠的Activity的onCreate方法中,在setContentView()方法前加入以下语句:getWindow().setFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON, WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);例如: prot...

2018-11-01 11:06:57 425

原创 ARM汇编语言常用知识

1. 汇编基本知识在汇编语言中包含有两种指令,分别为:指令:经过汇编器编译后,在执行阶段起作用,由CPU执行;伪指令:在编译阶段起作用,用于指导汇编如何进行,不生成机器码。在编写汇编语言时,指令不区分大小写,即mov与MOV意义相同,代码风格保持一致即可。一般在Windows中常采用大写,在GNU中采用小写。在汇编语言中,段落的注释采用/** 注释 **/单句的注释采用符号@,...

2018-10-22 21:40:14 3080

原创 Android中的shape属性

在Android软件的编写过程中,可以通过使用shape可以进行一些简单的UI开发。在shape属性中,支持的形状类型包括: rectangle:矩形 oval:椭圆形 line:线条 ring:环形shape中,包含的基本属性有:corners、solid、gradient、stroke、padding、size等。下面分别说是这几个属性...

2018-10-09 10:09:14 337

原创 Android 软件屏幕适配

在项目中,之前使用的是分辨率为1280*800的7寸屏幕,由于业务需要,现在更换为1024*600分辨率的7寸屏。更换完成后,由于之前的Android软件没有做屏幕的适配,从而导致软件界面显示不完整。因此需要进行屏幕适配。此次适配需要达到的目标是在这两种分辨率下,显示的界面相同。1. 基础知识在进行屏幕适配之前,先要了解一下与屏幕有关的几个概念:屏幕尺寸、屏幕分辨率、像素密度。1.1 屏幕...

2018-09-30 16:00:44 527

原创 C++学习笔记—OOP三大特性之继承

继承(inheritance)是面向对象设计(OOP)的三大特性之一。

2016-05-05 16:48:21 2023

原创 堆排序

堆排序是一种时间复杂度为O(nlog2n)O(n log_2n)的排序算法,是基于堆这种数据结构实现的。

2016-04-16 20:44:02 994 1

空空如也

空空如也

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

TA关注的人

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