自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 资源 (1)
  • 收藏
  • 关注

原创 Android coredomain 如何使用自定义的 property type?

背景Android 8.1 中引入了 Project Treble 架构,用于将 vendor 下的驱动和 Android system 系统分开,Android system 可以单独升级。SELinux 同样分成了两部分,位于 /system/etc/selinux 下的 platform 部分和位于 /vendor/etc/selinux 下的 vendor 部分。本文分析 Android...

2020-04-09 09:56:58 5582 4

原创 Android CTS中neverallow规则生成过程

CTS里面SELinux相关测试中neverallow测试项占绝大多数,Android系统开发者都应该知道,在修改sepolicy时,需要确保不能违反这些neverallow规则,不然会过不了CTS。CTS中nerverallow测试都是在SELinuxNeverallowRulesTest.java文件中,并且从AOSP代码中发现该文件不是人工提交的,而是通过python脚本生成的,为了以后更好...

2019-12-29 16:35:14 2469

原创 Git自动化合并多个Commit

文章目录git rebase逻辑git editor的修改处理git-rebase-todo文件Python实现当我们有多个commit或者从开源处拿到多个commit时,想合成一个commit,并保留每个commit的message时,大家都知道用"git rebase -i"可以解决,但这种方式需要手动进行操作,假如我们要处理的比较多,就想要自动化来处理,下面介绍下怎么自动化处理。git ...

2019-04-29 09:23:36 919 1

原创 digital envelope routines:EVP_DecryptFinal_ex:wrong final block length问题原因分析

digital envelope routines:EVP_DecryptFinal_ex:wrong final block length问题原因结论分析最近在做一个项目时,使用openssl中的aes进行加密和解密,使用相同的密钥但是出现下面的错误日志:139868329146176:error:0606506D:digital envelope routines:EVP_DecryptF...

2019-04-21 15:42:35 18286 1

原创 找茬游戏

找茬游戏最近在整理硬盘时,看到了几年前写的 美女找茬工具,一时兴起看下现在是否能用,试了下,完全用不了了,界面和以前的界面一样啊,图片的偏移应该没有变,按道理应该能用,猜想可能是图片做了处理。就花了点时间看了下,果然发现了问题,现在和大家分享下。原理找茬游戏是给出两种图片,图片中只有几处地方不同,快速找到不同地方的游戏。原理是通过程序拿到两种图片,然后逐像素对比来找到不同地方。图片获取hMainW

2017-09-25 21:22:18 1327

原创 Python error: Microsoft Visual C++ 9.0 is required (Unable to find vcvarsall.bat)解决方案

error: Microsoft Visual C++ 9.0 is required (Unable to find vcvarsall.bat). Get it … 解决方案python通过pip或者源码来安装某些模块时,这些模块包含有c/c++源码,安装过程会调用本地的编译器编译这些代码。在Windows平台下我安装时候的错误消息是“error: Microsoft Visual C++ 9.

2016-02-24 19:10:50 35175 1

原创 3-Longest Substring Without Repeating Characters @LeetCode

3-Longest Substring Without Repeating Characters @LeetCode题目题目中得到的信息有:一段字符串找出不重复子串的最大长度,只需要长度信息。思路肯定是需要将字符串遍历一遍,在遍历过程中就需要查找前面字符串是否出现该字符,因此这是该算法的重点。若没找到,长度加一,若找到了,长度会从前面该字符位置+1处开始算起。下面以图来说明:假如我们以begin为子

2016-01-15 23:10:07 523

原创 2-Add Two Numbers @LeetCode

2-Add Two Numbers @LeetCode题目思路题目中得到的信息有:这是两个非负数,每位分别保存在链表的一个结点上;逆序保存,从低位到高位依次。一般整数的相加都是从低往高进行,和保存的顺序一致,因此一次遍历就可完成,可以看出这道题目不难。C算法/** * Definition for singly-linked list. * struct ListNode { *

2016-01-13 21:08:59 473

原创 1-Two Sum @LeetCode

1-Two Sum题目思路题目中得到的信息有:都是整数,并且可正可负,也可一个值包含多个;只有一个正确的结果。方法一:最直接的思路就是两重循环遍历,时间复杂度是O(n^2),这样肯定不行。方法二:由于是乱序的,1)可以先排序,2)然后再遍历一遍就可以找到结果。排序的话不能再原来的基础上进行,这样就破坏了下标顺序,因此需要申请额外的空间,用于保存他们的索引,然后再该空间上进行排序。时间复杂度是[

2016-01-13 00:00:53 489

原创 LEB128相关知识

LEB128相关知识介绍LEB128(little endian base 128)是一种变长的整数压缩编码形式,它是出自于DWARF debug file format。在Android的Dalvik Executable format中使用该编码用于表示32位整数。由于32位整数占用固定的4个字节,可能大多数整数并不需要4个字节,最高几个字节可能为0(正数)或者为1(负数),该编码就是不保存最高

2016-01-07 14:08:09 4344

原创 类似py2exe软件真的能保护python源码吗

类似py2exe软件真的能保护python源码吗背景最近写了个工具用于对项目中C/C++文件的字符串常量进行自动化加密处理,用python写的,工具效果不错,所以打算在公司内部推广。为了防止代码泄露就考虑不采用直接给源码方式,而python二进制脚本pyc和pyo,虽然提供的不是源码,但可以通过uncompyle2直接得到源码。通过网上资料发现有Windows下的py2exe、Mac下的py2app

2015-11-29 15:52:24 10228 1

原创 Makefile中的ifeq 多条件使用

Makefile中的ifeq 多条件使用

2015-08-21 20:14:23 106658 6

原创 Android引入动态库so的方法

Android引入动态库so的方法标签(空格分隔): Android so 第三方库

2015-08-19 21:02:13 11533 2

原创 在Win10上使用Visual Studio2015的Android模拟器

在Win10上使用Visual Studio2015的Android模拟器

2015-08-16 16:06:10 9838

原创 linux下insmod模块出现“Invalid parameters"

在编译一个模块时,会出现WARNING:“函数名” undefined!,这 说明该模块所依赖的模块还没有加载进内核,需要先加载所依赖的模块。当加载依赖模块后,使用insmod会出现“Invalid parameters“,dmesg | tail 查看给出的具体信息,会发现是" no symbol version for 之前的函数名",说明该模块找不到所依赖的函数解决方

2015-03-19 16:48:36 17385

原创 在干净的ubuntu 14.10上编译Qemu2.2.0的过程

下载Qemu的源代码从官网http://wiki.qemu.org/Main_Page 中下载最新的源代码,目前是2.2.0.安装依赖库和编译编译过程分两步1. ./configure 2. make,当然可以通过配置只编译特定平台代码,这样速度会快很多,但所依赖的库都是差不多的,我编译时所有平台,这样方便以后的使用。由于是新安装的ubuntu,肯定会缺少很多必要的

2015-03-09 15:12:15 8610

原创 用于C/C++统计时间

/* * DESCRIPTION: *  * WQ_PERF_*** must be used in pairs. Example: WQ_PERF_BEGIN() ... ... WQ_PERF_END() *  * WQ_PERF_BEGIN() and WQ_PERF_END() is used calculate the time between them. *

2014-11-06 11:04:41 808

原创 Windows下struct和union字节对齐设置以及大小的确定(一 简介和结构体大小的确定)

在windows下设置字节对齐大小的方式,目前我了解有三种:1.

2014-04-30 10:59:52 3031

原创 C++类中一个构造函数调用另一个构造函数

class A{ int a; int b; int c; public: A(int aa, int bb): a(aa), b(bb), c(0) {cout << "aa bb"<<endl;} A(int aa, int bb, int cc) virtual ~A(){} void print(int aa, int bb, int cc) { cout

2014-04-11 16:21:19 12445

原创 用汇编语言角度来理解C语言的一些问题

在汇编的世界里,整数的存在和表示是没有有符号数和无符号数之分的,都是用数的补码表示,有无符号的计算是靠指令来进行确定。如JA/JB是用于无符号数的跳转指令,而JG/JL则是用于有符号数的指令。汇编中的指令是

2014-03-26 15:48:20 1125

C#语言规范

这是C#语言规范,该语言可用于开发.net和windows phone应用。

2014-11-26

空空如也

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

TA关注的人

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