自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 google的C++代码规范

文件组织和格式xxx宏宏的值部分如果多于一项,一定要加括号。#define ERROR_STRING_LENGTH 50+1 //ERROR:值部分(50+1)多于一项,容易在运算过程中被高优先级运算符打乱结合顺序#define ERROR_STRING_LENGTH (50+1) //TRUE:宏的值部分不要以分号结尾。宏函数的传入的参数不要出现运算。不要用宏来改写语言,替换关键字之类的行为。宏函数的每个参数都要用括号括起来。不带参数的宏函数也要加括号,暗示其为宏函

2021-08-04 11:02:28 373

原创 itchat库的使用

itchat使用步骤1. 登陆import itchatitchat.auto_login() 会生成一个登陆二维码,如果想持久连接需要使用添加参数 hotReload=true2. 寻找联系人users=itchat.search_friends(name='你对他的备注姓名')print(users) #返回的是一个li...

2021-08-04 11:01:35 480

原创 cmake语法

cmake语法#指定CMake编译最低要求版本CMAKE_MINIMUM_REQUIRED(VERSION 3.14)#给项目命名PROJECT(MYPRINT)#收集c/c++文件并赋值给变量SRC_LIST_CPP ${PROJECT_SOURCE_DIR}代表区当前项目录FILE(GLOB SRC_LIST_CPP ${PROJECT_SOURCE_DIR}/src/*.cpp)FILE(GLOB SRC_LIST_C ${PROJECT_SOURCE_DIR}/src/*.c)#

2021-08-04 11:00:21 160

原创 ffmpeg

ffmpegA complete, cross-platform solution to record, convert and stream audio and video.一个用于录制,转换和流式处理视频和音频完整的,跨平台的解决方案ffmpeg:一个命令行工具,用于在不同格式的多媒体文件之间进行转换f’fplay:一个基于sdl和ffmpeg库的简易多媒体播放器ffprobe:一个简易的多媒体流式分析器ffmpeg提供给开发者的库:libavutil is a library co

2021-08-04 11:00:06 116

原创 makefile

基本语法包含其他makefile:include xxx特殊符号$@ 表示目标文件$^ 表示所有的依赖文件$< 表示第一个依赖文件$? 表示比目标还要新的依赖文件列表关键字if语法:$(if CONDITION,THEN-PART[,ELSE-PART])说明:函数的条件表达式“CONDITION”决定了函数的返回值只能是 “THEN-PART”或者“ELSE-PART”两个之一的计算结果常用函数...

2021-08-04 10:59:50 51

原创 Shell语法

shell特殊字符#:注释;:命令分隔符,用于同一行上写多于一行的命令;;:“双分号”终止case选项.:“点”命令,相当于source命令":双引号,内部有些字符是特殊字符':单引号,内部所有字符都不解释为特殊字符,:逗号,链接算术运算符\:转义符,/:文件名路径分隔符+除法运算符:命令替换,command`可以将命令的输出赋值到一个变量中::空命令,等价于python中的pass,作为判断条件为true!:取反操作符,反转命令退出码结果*:通配符,文件名匹配,正则表达式

2021-08-01 10:58:29 230

原创 Android构建系统——Android.mk——Android.bp

Android.mk语法makefile文件控制整个工程的编译规则,android.mk也是一样的功能,只不过它是android编译环境下的一种特殊的“makefile”文件, 它是经过了android编译系统处理的。所谓android编译系统,就是android顶层目录下的build目录里面的一系列编译控制文件,其实就是一系列makefile文件和 .mk 文件,这些文件才是编译android系统完整的makefile文件.每个模块里的android.mk只不过是被包含进android编译系统的一小部分

2021-08-01 10:58:18 949

原创 OpenMax框架

OpenMAXopen media acceleration:开放多媒体加速器。跨平台的软件抽象层,用来处理多媒体。注意:这是一个标准,而不是具体的实现。openmax建立了三个层次上的标准。AL层:应用层。完全免费,跨平台的开放标准。提供创建,控制player和recorder对象;连接player,recoreder与配置输入和输出对象(content reader/writer,audio inputs/outputs,display windows)IL层:集成层。IL层的API定

2021-08-01 10:58:03 766

原创 Android的binder机制

service manager是一个用于查询其他binder服务的特殊binder服务。在init解析init.rc中启动的,是一个c程序,在路径/frameworks/native/cmds/servicemanager下,由两个文件构成service_manager.c和binder.c#init.rcservice servicemanager /system/bin/servicemanager class core user system group system criti.

2021-08-01 10:57:42 135

原创 OTA升级相关

recovery(卡刷,sd卡升级)一种可以对安卓机内部数据或系统进行修改的模式,类似windows PE或DOS。备份,更新,复原1、recovery升级的大致流程:​ ①编译:执行make otapackage​ ②.main system模式下,将升级包重名为update.zip,下载到/cache目录下​ ③.创建文件/cache/recovery/command,并向command中写入:–update_package=/cache/update.zip​

2021-08-01 10:57:25 96

原创 jni基础入门

Java调用C++静态注册1.1将需要用本地代码实现的Java方法加上native声明1.2使用javac命令编译Java类1.3使用javah命令生成.h头文件1.4使用本地语言实现头文件中声明的方法1.5将本地代码编译生成动态链接库1.6在Java类中加载这一动态链接库C++调用Java为了能获取java层面的一些参数或调用java层的函数jni调用java对象的方法调用对象的某个方法 Call<返回类型>Method<传参类型>,比如调用AppInf

2021-08-01 10:57:07 308

原创 音视频基础

TV标准模拟电视有NTSC、PAL和SECAM三种标准数字电视有三种标准:欧洲的DTV(Digital Video Broadcasting 数字视频广播)美国的ATSC(Advanced Television System Committee先进电视制式委员会)日本的ISDB((Integrated Services Digital Broadcasting 综合业务数字广播)DVB(digital video broadcast)数字视频广播#由“DVB Project”维护的一系列为

2021-08-01 10:56:33 842

原创 typora画时序图语法

/** js sequence diagrams* https://bramp.github.io/js-sequence-diagrams/* © 2012-2017 Andrew Brampton (bramp.net)* Simplified BSD license.*/%lex%options case-insensitive%{// Pre-lexer code can go here%}...

2021-08-01 10:55:36 408

原创 Android内核设计思想

定制产品的编译和烧录在device或vendor文件夹下创建公司命名的文件夹,并在该文件夹下新建各个产品文件夹,每个产品的文件就优先放在产品文件夹下(厂商–>产品)在产品文件夹下新建一个vendorsetup.sh脚本,将产品添加到lunch选单中。添加AndroidProducts.mk文件,该文件只是做一个转向的功能,每个产品的具体编译会有相应的mk文件PRODUCT_MAKEFILES := \ $(LOCAL_DIR)/aosp_toro.mk \ $(LOCAL_DIR)/f

2021-08-01 10:54:06 365

原创 Selinux和Sepolicy

标签selinux通过标签来匹配规则和相应的许可操作。标签采用以下形式:​ user:role:type:mls_level规则和域selinux的规则采用一下形式:allow domains types:classes actionsdomains :域,可以理解成一个容器,存放不同主体subject。不同主体可以同属一个域types:被访问对象(客体)的标签classes:客体的不同类型actions:需要执行的操作启动第三方可执行程序start exttv-0-1

2021-08-01 10:53:04 326

空空如也

空空如也

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

TA关注的人

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