自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Deep Lee的专栏

一个程序员的笔记

  • 博客(55)
  • 资源 (34)
  • 收藏
  • 关注

原创 Android使用固定的key给ko(kernel module) 签名

Android 原生默认每次编译使用自动生成在out目录的 pem和x509文件签名,由于种种原因我们可能需要使用固定的key给ko做签名,经过研究发现如果要使用固定的key来签名,需要做一下修改。

2022-10-13 20:56:21 1614

原创 Android Kernel Module 预编译同步签名方法

Android Kernel Module 预编译同步签名方法

2022-09-20 20:15:44 749

转载 提升 C++ 开发效率的几个小技巧

以下文章来源于程序员小方 ,作者张小方程序员小方技术,生活,编码,加班,读书学习,这里是程序员小方的 IT 生活。我们说的 Modern C++,一般指的是 C++11 及以后的标准,从 C++ 11 开始,Modern C++ 引入了大量的实用的特性,主要是两大方面,学习的时候也可以从这两大方面学习:增强或者改善的语法特性;新增的或者改善的 STL 库。我们来看几个具体的案例:案例 1:统一的类成员初始化语法与 std::initializer_list:在 C++98/03 中,假设我们

2021-08-24 10:43:58 588

转载 C++常见的三种内存破坏场景和分析

C++常见的三种内存破坏场景和分析以下文章来源于一个程序员的修炼之路 ,作者河边一枝柳一个程序员的修炼之路主要分享Windows开发与调试, Linux, C/C++, 以及后端开发技术有一定C++开发经验的同学大多数踩过内存破坏的坑,有这么几种现象:比如某个变量整形,在程序中只可能初始化或者赋值为1或者2, 但是在使用的时候却发现其为0或者其他的情况。对于其他类型,比如字符串等,可能出现了一种出乎意料的值!程序在堆上申请内存或者释放内存的时候,在内存充足的情况下,居然出现了堆错误。当出现以上

2021-08-24 10:28:20 315

原创 Android 生成自己的签名key(releasekey platform shared media networkstack verify等)

Android官方文档https://source.android.google.cn/devices/tech/ota/sign_builds?hl=zh-cnhttps://android.googlesource.com/platform/build/+/refs/heads/master/target/product/security/README前言Android 操作系统映像在三个地方使用加密签名:映像中的所有 .apk 文件都必须经过签名。Android 软件包管理器通过下列两种方

2021-08-11 15:27:00 1382

原创 Android 刚开机就出现“正在关机”对话框的问题分析

前言之前项目,一直会出现刚开机就出现“正在关机”对话框,然后就关机了,通过串口看内核log。发现进入了recovery模式,然后就跟了一下代码,看什么情况下会进入这个模式代码分析关机对话框关机对话框显示在frameworks/base/services/core/java/com/android/server/power/ShutdownThread.java而调用者在frameworks/base/services/core/java/com/android/server/power/Pow

2021-07-29 16:21:50 841 1

原创 Android GDB的使用

官网介绍https://source.android.com/devices/tech/debug/gdb简单使用前提source build/envsetup.shlunch aosp_arm64-userdebugNative processdevelopment/scripts/gdbclient.py -p 例如:mediacodec 的 pid是 388 要dbg mediacodec 只需要development/scripts/gdbclient.py -p 388下面就是

2021-07-21 17:15:13 445

原创 Android9 HWbinder使用-获取service流程解析

前言接上篇Android9 HWbinder使用-注册service流程解析讲了hidl service的注册流程,这篇文章接着解析hidl service的获取流程HwBinder框架流程解析废话不多说,继续以USB HAL 1.0为例,解析一下获取的流程以vts为参考获取的代码获取流程1. hardware/interfaces/usb/1.0/vts/functional/VtsHalUsbV1_0TargetTest.cpp改一下代码,以常见的不带参数为例usb = IUsb::

2020-12-30 18:19:44 2085

原创 Android9 HWbinder使用-注册service流程解析

前言写一个自己的 Android Hidl Service这里写了怎么创建一个自己的hidlservice,现在讲一下hidlservice的注册和获取流程HwBinder的框架

2020-12-30 13:33:39 2531

原创 增加真随机数的熵值,以便快速获取随机数

#include <stdio.h>#include <fcntl.h>#include <unistd.h>#include <errno.h>#include <stdlib.h>#include <time.h>#include <string>#include <linux/random.h>#include <sys/ioctl.h>#include <stdio.h

2020-12-17 14:57:03 795 1

原创 VS Code常用配置

前言vs code 所有用户自己更改的配置都存储在settings.json文件中存储路径不同的系统存储路径不同linux${HOME}/.config/Code/User/settings.jsonwindows%APPDATA%\Code\User\settings.json常用配置禁止预览。每次打开文件总是新开tab页"workbench.editor.enablePreview": false,字体大小"editor.fontSize": 14,根据出口大

2020-12-17 14:44:19 193

原创 Android Android.bp 预编译/集成三方so 二进制 rc etc 配置文件等

前言现在大多数项目需要集成三方的so 二进制 rc etc 配置文件等,下面的方法基本可以覆盖,备用语法参考语法参考官方链接实例预编译继承二进制文件/bin 和启动rc源文件vendor/bin/hw/[email protected]文件[email protected]_prebuilt_binary { name: "android.hardware.config

2020-08-04 15:29:31 5261

原创 国内 repo 拉取android源码

sudo gedit /etc/hosts复制代码在hosts文件中加入203.208.49.187 googlesource.com203.208.49.187 android.googlesource.com203.208.49.187 gerrit.googlesource.com复制代码注意,203.208.49.187只是

2020-06-12 15:39:22 3081

原创 写一个自己的 Android Hidl Service

HIDLHAL 接口定义语言(简称 HIDL,发音为“hide-l”)是用于指定 HAL 和其用户之间的接口的一种接口描述语言 (IDL)。HIDL 允许指定类型和方法调用(会汇集到接口和软件包中)。从更广泛的意义上来说,HIDL 是用于在可以独立编译的代码库之间进行通信的系统。HIDL 旨在用于进程间通信 (IPC)。进程之间的通信采用 Binder 机制。对于必须与进程相关联的代码库,还可以使用直通模式(在 Java 中不受支持)。HIDL 可指定数据结构和方法签名,这些内容会整理归类到接口(与类

2020-06-11 17:13:14 3254 5

原创 Android native/C/C++ 监控文件夹变化

前言

2020-05-08 15:13:07 929

翻译 下载编译LineageOS代码

文章目录介绍前期准备构建你的LineageOS和LineageOS Recovery安装SDK安装构建软件包Java创建文件夹安装repo命令将~/bin目录放在环境变量中初始化LineageOS源码仓库介绍这些说明有望帮助您的Motorola Moto X 2014开始,解锁引导加载程序(如有必要),然后为您下载所需的工具以及LineageOS的最新源代码(基于Google的Android操...

2020-03-16 10:38:33 1992

原创 Android源代码编译脚本

前言在Android源代码编译过程中经常要source,lunch等一系列命令,这个脚本实现了默认保存编译log,无参可编译,可根据需求使用参数,可以单编,清编 update-api等脚本代码#!/bin/bash##creat by Deep Lee for android build# set -o errexitusage() { cat <<USAGE...

2020-01-16 14:57:41 880 3

原创 Bash脚本之多线程处理

前言在bash中并没有线程的概念,我们可以用多进程来模拟多线程的操作来达到同样的效果示例代码#!/bin/bash# thread number can modify if neededTHREAD=10ROOTDIR="$(pwd)"TMP_FIFO="/tmp/$.fifo"#cannot del here. this is thread controlmkfifo "$...

2020-01-16 14:39:56 2352

原创 Android C/C++获取屏触屏输入设备、屏幕分辨率

#include <stdlib.h>#include <stdio.h>#include <gui/ISurfaceComposer.h>#include <gui/Surface.h>#include <gui/SurfaceComposerClient.h>#include <ui/DisplayInfo.h>...

2020-01-14 18:17:07 3894 4

转载 C语言关键字const作用及其应用

只要学过C语言的,都有知道const这个关键字,知道是用来定义常量的,如果一个变量被const修饰,那么它的值就不能再被改变,那么还有什么其他作用呢?一、const常用作用1. 修饰局部变量const int n=5;int const n=5;/*二者是等价的,均表示变量n的值不能被改变了*/注意:在使用const修饰变量时,一定要给变量初始化,否则之后就不能赋值了!接下来看看co...

2020-01-14 16:41:02 452

转载 .gitignore使用详解

1. 简绍我们做的每个Git项目中都需要一个“.gitignore”文件,这个文件的作用就是告诉Git哪些文件不需要添加到版本管理中。比如我们项目中的npm包(node_modules),它在我们项目中是很重要的,但是它占的内存也是很大的,所以一般我们用Git管理的时候是不需要添加npm包的。2. 常用的规则Git忽略文件的原则忽略操作系统自动生成的文件,比如缩略图等;忽略编译生成的中间...

2020-01-14 14:45:42 569

转载 Bash脚本编程之算术运算

简介Bash所支持的算术运算和C语言是一样的,这里指的是操作符(operator)以及它们的优先级(precedence)、结合性(associativity)和值,详见Shell Arithmetic (Bash Reference Manual)。注意:如果乘号“*”在某些场景中失效,有可能是它被解释成了通配符,可尝试对其转义。1+2=3在上面这个简单的算术运算中,1和2叫做操作数/运...

2020-01-07 10:37:43 875

转载 Bash脚本编程之数组

数组简介在bash脚本编程当中,变量是存储单个元素的内存空间;而数组是存储多个元素的一段连续的内存空间。数组由数组名和下标构成,如下。ARRAY_NAME[SUBSCRIPT]数组按照下标的类型可分为两种:索引(indexed)数组:下标为0、1、2等非负整数。关联(associative)数组:下标为用户自定义的字符串。数组的操作声明索引数组可以不声明直接使用;而关联数组如果...

2020-01-07 10:19:46 544

转载 Bash脚本编程之字符串处理

简介其实这里说得字符串处理,对应的是bash官网中的【Shell Parameter Expansion】,不过直接去看这部分内容实在是太难以理解了。字符串处理会比较好理解,平常使用应该也是足够的了。字符串切片这块在上一篇讲解数组的文章中(https://www.linuxidc.com/Linux/2020-01/161945.htm),也大概提到了Shell Parameter Expa...

2020-01-07 10:08:32 290

原创 针对特定作者/文件/文件夹的git format-patch

针对特定作者git log X..Y --author='<AUTHOR>' --format="%H" | sed 's/$/^!/g' | xargs -I{} git format-patch {}git log X…Y –author =’< AUTHOR>‘ –format =“%H”以commit id的格式生成X到Y之间author为输出sed’s /...

2019-09-27 18:29:00 2503

转载 Clang-format 配置文件

官方文档官方详细配置解释点击此处文件格式.clang-format配置文件放置规则不指定,默认字需要格式化的文件同级目录向上寻找.clang-format文件--stype指定配置文件或者默认配置参考配置文件#基于那个配置文件BasedOnStyle: GoogleLanguage: CppColumnLimit: 120BraceWrapping: # class...

2019-09-16 10:04:10 7906

原创 利用ContentObserver获取系统时间制式12/24小时

Function 1直接获取 Settings.System.getInt(getContext().getContentResolver(), Settings.System.TIME_12_24, 0);Function 2利用数据库的回调 // 注册监听 getContext().getContentResolver().registerContentObserver(Set...

2019-09-12 10:54:00 323

转载 Git常用命令整理,详细全面

Git篇安装之后第一步安装 Git 之后,你要做的第一件事情就是去配置你的名字和邮箱,因为每一次提交都需要这些信息:git config --global user.name "Deep Lee"git config --global user.email "[email protected]"获取Git配置信息,执行以下命令:git config --list...

2018-04-10 10:10:39 383

转载 如何升级Windows 10中内置的Ubuntu子系统

微软此前与Canonical达成合作并将Ubuntu带到Windows 10系统,用户在经过简单设置后即可使用该系统。该功能对于部分开发者而言应算是个不错的消息,这样可以直接使用Windows 10完成某些Linux的命令操作。2015年7月微软发布 Windows 10 后默认获取的版本都是Ubuntu 14.04,不过目前这个版本已上升到16.04。不过在升级上和其他 Ubuntu 机器相同也是

2017-04-14 15:11:43 9169 1

转载 下载LineageOS 源码编译

前才准备好 至于说要安装什么依赖什么工具的,可以等出问题时再apt-get,以下仅简述流程。源码下载源码下载与其他的是一样的,git地址在这里,同样也是使用repo下载。初始化下载 这里下载cm14.1repo init -u git://github.com/LineageOS/android.git -b cm-14.1驱动下载 由于我是要使用nexus5的男人,所以需要把n5的驱动

2017-04-01 11:11:49 14495 12

转载 Android源码编译选项eng、user、userdebug的区别

http://www.2cto.com/kf/201312/265629.htmlAndroid源码编译选项eng、user、userdebug的区别1、各选项简要说明eng:debug版本user:release版本userDebug版本:部分debug版本2、详细介绍Android源码编译选项eng、user、

2016-01-26 09:59:04 1604

原创 android 强制修改adb pull 文件的路径

#强制修改adb pull 文件的路径diff --git a/adb/file_sync_service.c b/adb/file_sync_service.cindex 7933858..fa4afc5 100644--- a/adb/file_sync_service.c+++ b/adb/file_sync_service.c@@ -432,6 +432,10 @@ v

2015-11-12 14:36:46 3601

转载 Linux chattr和lsattr

PS:有时候你发现用root权限都不能修改某个文件,大部分原因是曾经用chattr命令锁定该文件了。chattr命令的作用很大,其中一些功能是由Linux内核版本来支持的,不过现在生产绝大部分跑的linux系统都是2.6以上内核了。通过chattr命令修改属性能够提高系统的安全性,但是它并不适合所有的目录。chattr命令不能保护/、/dev、/tmp、/var目录。lsattr命令是显示chatt

2015-09-18 17:04:55 649

转载 Android 打印文件名、函数名、行号

Log.d(TAG,new Exception().getStackTrace()[0].getMethodName()); //函数名 Log.d(TAG, Thread.currentThread().getStackTrace()[2].getMethodName()); //函数名 Log.d(TAG, “”+Thread.currentThread().getStackTrace()[

2015-07-15 09:56:15 3905 1

转载 读取到配置文件的C语言的接口实现

转自:http://www.linuxidc.com/Linux/2015-03/115172.htm为了完成读取系统中的配置文件的某个key键的值,由于使用别人的库总是不爽,而且对于格式有一定的要求,那么就自己来写一个这样的接口以供使用了。实现原理很简单,通过打开配置文件,进行一行一行的读取,对比行中是否存在key串且此key串的下一个字符是否为'=',若是,则得到'='号之

2015-03-19 10:05:55 716

转载 Android中单击空白区域隐藏键盘

转自:http://www.linuxidc.com/Linux/2015-03/114753.htm项目开发中,产品经理拿着iPhone上的效果说Android!iPhone上在使用键盘输入时,在非输入框位置(即空白区域)点击,键盘会收起来。之前在Android上没有实现过这儿效果,首先想到的是在最外层布局文件上添加onclik事件,由于子view会优先处理事件,所以在点击其他地方时隐...

2015-03-10 10:34:21 752

转载 linux进程后端运行,脱离终端

转自:http://blog.chinaunix.net/uid-24517549-id-4030121.html我们经常会碰到这样的问题,用 telnet/ssh 登录了远程的 Linux 服务器,运行了一些耗时较长的任务,结果却由于网络的不稳定导致任务中途失败。如何让命令提交后不受本地关闭终端窗口/网络断开连接的干扰呢?下面举了一些例子,您可以针对不同的场景选择

2015-02-11 14:46:34 1125

转载 一个通用的C/C++ Makefile

转自:http://www.linuxidc.com/Linux/2015-02/112713.htm写了一个通用的GNU/Linux环境下的Makefile。该Makefile适用于最后生成若干个可执行文件的小型C/C++工程,只要将该Makefile放在源码根目录下make,它会自动查找该目录下(包括子目录)的所有源码文件(支持.cpp .c .h格式)

2015-02-03 11:51:00 788

原创 ntfs-3g 移植到android

ntfs-3g源码为20140215的最新稳定版已经修改移植好的源码地址:http://download.csdn.net/detail/qq410942197/8341493

2015-01-10 10:23:00 1581

转载 兼容Windows与Linux的写日志代码

转自:http://www.linuxidc.com/Linux/2014-12/111055.htm以下代码可在Windows与Linux上正确编译和执行。日志按照QQ号和日期为单位分类进行存放,可防止不同QQ号的日志混放在一起,以及日志随着时间逐渐变大等问题。#include #include #include #ifdef WIN32#includ

2014-12-31 16:22:16 577

scrt-9.1.1-2638.ubuntu20-64.x86_64.deb for unbuntu 20.04

SecureCRT client for Windows, Mac, and Linux combines rock-solid terminal emulation with the strong encryption, broad range of authentication options, and data integrity of the SSH (Secure Shell) protocol for secure network administration and end user access.

2022-01-11

scrt-sfx-9.1.0-2579.ubuntu20-64.x86_64.deb

SecureCRT client for Windows, Mac, and Linux combines rock-solid terminal emulation with the strong encryption, broad range of authentication options, and data integrity of the SSH (Secure Shell) protocol for secure network administration and end user access.

2021-09-29

sshfs-win-3.5.20024-x64.msi

SSHFS-Win is a minimal port of SSHFS to Windows. Under the hood it uses Cygwin for the POSIX environment and WinFsp for the FUSE functionality.

2020-05-27

VMware-Tools-core-10.3.2-9925305.zip

Vmware Tools For Linux & windows Version 10.3.2 It use for vmaware player or workstation to share files,Clipboard etc...

2020-01-10

Vmware Tools For Linux

Vmware Tools For Linux Version 10.3.2 It use for vmaware player or workstation to share files,Clipboard etc...

2020-01-10

.clang-format

clang-format配置文件,基于Google style自定义配置,仅供大家参考

2019-09-16

wps linux 64bit

wps 9.1.0.4961 linux 64位版本 亲测可用

2015-06-15

ubuntu14.04 3D 桌面配置文件

我自己使用的ubuntu14.04 3D 桌面配置文件 导入即可使用

2015-06-15

jpeg转BMP565图像的jni代码

目前是jni库代码添加man函数可以用作二进制或者ubuntu直接用 ubuntu直接使用请用下面的命令编译:g++ tobmp.cpp -ljpeg 程序直接把jpg图片转换为bmp565的图片

2015-05-27

APK反编译工具包

APK反编译工具包v1.6, 下载即可使用哟

2015-05-19

ubuntu-QQ国际版

ubuntu QQ 国际版 深度linux制作

2015-04-20

wps linux版

wps-office_9.1.0.4945~a16p3_i386

2015-04-16

scrt-7.3.3-779.ubuntu13-64.x86_64.deb

scrt-7.3.3-779.ubuntu13-64.x86_64.deb

2015-04-02

android C解压Zip

android 下C写的一个解压Zip的小demo

2015-03-26

secureCRT-7.3.2-752-ubuntu 64

secureCRT-7.3.2-752-ubuntu 64bit deb

2015-03-17

V4l2_get_fps_demo

V4l2获取不同分辨率下摄像头支持的分辨率

2015-02-12

android调用vlcjni.so解码播放视频demo

android调用vlcjni.so解码播放视频demo

2015-01-10

NTFS-3g android 移植版

ntfs-3g 20140215版本 移植到android的源码 放到external目录编译即可使用

2015-01-08

VMwaretoos MAC版

虚拟机 vmware workstation 的 VMwaretoos MAC版

2014-11-05

secureCRT-7.3-ubuntu 64

secureCRT-7.3-ubuntu 64位deb版

2014-11-05

secureCRT-7.2.6-606-ubuntu32

secureCRT-7.2.6-606-ubuntu32 deb版

2014-10-10

secureCRT-7.2.6-606-ubuntu 64

secureCRT-7.2.6-606-ubuntu 64位deb版

2014-10-10

winrar 5.0 beta4 繁体中文版

winrar 5.0beta4繁体中文版

2013-05-30

winrar 5.0beta3简体中文版

winrar5.0beta3 简体中文版

2013-05-30

chmod的C语言实现

chmod命令的C语言实现 仅支持数字命令

2013-05-28

空空如也

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

TA关注的人

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