- 博客(351)
- 资源 (60)
- 收藏
- 关注

原创 Android移动架构汇总
移动架构01_UML用例图移动架构02_UML类图移动架构03_UML时序图移动架构04_设计模式一:工厂模式移动架构5_PowerDesigner新建时序图移动架构06_设计模式二:抽象工厂模式移动架构07_原型模式移动架构08_单例模式移动架构09_Activity的启动流程分析移动架构10_面向切面设计AOP移动架构11_建造者模式移动架构12_责任链模式移动架构13...
2020-01-06 16:46:32
597

原创 DailyWorkSummary
01_2018April01_自定义控件实现圆角阴影效果02_2018April02_TextView实现部分点击+不同字体颜色03_2018April03_Android网络加载PDF文件04_2018May01_ListView实现横向滚动05_2018May02_柱状图06_DailyWork02_ViewPager中Fragment实现懒加载07_2018June01_自定义开...
2019-07-15 10:38:20
168

原创 Android高级UI汇总目录
SeniorUI01_UI绘制流程分析(源码级分析) SeniorUI0101_UI绘制流程分析运用(底部动画弹出显示框) SeniorUI02_UI绘制流程分析二(View的绘制过程) SeniorUI0201_UI绘制流程分析二应用(自定义标签流式布局) SeniorUI02_02自定义标签流水布局 SeniorUI0203_分析ondraw()过程 SeniorUI03_Pai...
2018-07-26 12:12:36
458
原创 15 悬浮窗口
DailyWorkSummary文章目录一 需求二 API三 注意事项1 权限获取2 LayoutParams3 不能重复定义LayoutParams四 代码实现1 MyApplication2 FloatView3 FloatingWindowActivity五 Demo一 需求实现类似微信聊天的悬浮框效果,加载在Activity页面之上,可以用来做一个唯一的强制操作二 APIWindowManager的addView和removeView实现三 注意事项1 权限获取 <u
2021-01-20 15:43:27
13
原创 NDK52_OpenGL实现极快、极慢模式视频录制
MediaCodec MediaCodec是Android 4.1.2(API 16)提供的一套编解码API。它的使用非常简单,它存在一个输入缓冲区与一个输出缓冲区,在编码时我们将数据塞入输入缓冲区,然后从输出缓冲区取出编码完成后的数据就可以了。除了直接操作输入缓冲区之外,还有另一种方式来告知MediaCodec需要编码的数据,那就是:public native final Surface createInputSurface();使用此接口创建一个Surface,然后我们在这个Surface
2020-12-11 18:26:38
25
原创 NDK51_OpenGL:FBO
NDK开发汇总文章目录一 FBO二 FBO简单使用1 创建View和Renderer2 配置着色器基本绘制处理3 创建FilterAbstractFilterCameraFilterScreenFilter4 工具类三 Demo一 FBO 帧缓冲对象:FBO(Frame Buffer Object)。默认情况下,我们在GLSurfaceView中绘制的结果是显示到屏幕上,然而实际中有很多情况并不需要渲染到屏幕上,这个时候使用FBO就可以很方便的实现这类需求。FBO可以让我们的渲染不渲染到屏幕上,而是
2020-12-09 19:43:56
42
原创 NDK50_OpenGL
NDK开发汇总什么是OpenGL?Open Graphics Library图形领域的工业标准,是一套跨编程语言、跨平台的、专业的图形编程(软件)接口。它用于二维、三维图像,是一个功能强大,调用方便的底层图形库。与硬件无关。可以在不同的平台如Windows、Linux、Mac、Android、IOS之间进行移植。因此,支持OpenGL的软件具有很好的移植性,可以获得非常广泛的应用。OpenGL ES 1.0 和 1.1 :Android 1.0和更高的版本支持这个API规范。OpenG
2020-12-07 17:14:52
20
原创 常见离散数学符号
常见符号联结词: ¬ ∧ ∨ → ↔≠ Ø ∈ △希腊字母表Αα阿尔法AlphaΒβ贝塔BetaΓγ伽玛GammaΔbaiδ德尔塔DelteΕε艾普西龙EpsilonΖζ捷塔ZetaΕη依塔EtaΘθ西塔ThetaΙι艾欧塔IotaΚκ喀帕Kappa∧λ拉姆达LambdaΜμ缪MuΝν拗NuΞξ克西XiΟο
2020-12-04 15:14:17
85
原创 NDK49_OpenCV(三):车牌字符分割与ann分类识别
NDK开发汇总文章目录神经网络神经网络 1981 年的诺贝尔医学奖获得者: David Hubel(出生于加拿大的美国神经生物学家) 和Torsten Wiesel,以及 Roger Sperry。前两位的主要贡献,是“发现了视觉系统的信息处理”:可视皮层是分级的。 1958 年,DavidHubel 和Torsten Wiesel 在美国约翰·霍普金斯大学,研究瞳孔区域与大脑皮层神经元的对应关系。他们在猫的后脑头骨上,开了一个3 毫米的小洞,向洞里插入电极,测量神经元的活跃程度。 然后,他
2020-12-03 15:36:52
78
原创 NDK48_OpenCV(二):车牌svm确定与hsv定位
NDK开发汇总文章目录HOG特征SVMHSV颜色模型色调H饱和度S明度VHOG特征局部归一化的梯度方向直方图,是一种对图像局部重叠区域的密集型描述符, 它通过计算局部区域的梯度方向直方图来构成特征。参数1(检测窗口)的宽- 参数2(块大小)的宽 结果与参数3(块滑动增量)的余数要为0 高也一样参数4是胞元大小,参数5是梯度方向HOGDescriptor hog(Size(128, 64), Size(16, 16), Size(8, 8), Size(8, 8), 3);检测窗口被分为
2020-12-03 15:35:40
57
原创 NDK47_OpenCV(一):车牌定位
NDK开发汇总参考开源工程链接https://www.cnblogs.com/subconscious/p/4022454.htmlhttps://github.com/liuruoze/EasyPR文章目录一 OpenCv识别车牌流程主要代码二 车牌svm确定与hsv定位HOG特征SVMHSV颜色模型色调H饱和度S明度V一 OpenCv识别车牌流程主要代码CarRecgnize#include "CarPlateRecgnize.h"int main(){ CarPlateR
2020-12-03 15:34:31
71
原创 06 一阶逻辑等值演算与推理
离散数学与组合数学汇总文章目录主要内容5.1 一阶逻辑等值式与置换规则5.2 置换规则、换名规则、代替规则1. 置换规则2. 换名规则3. 代替规则5.2 一阶逻辑前束范式5.3 一阶逻辑的推论理论主要内容一阶逻辑等值式与基本的等值式置换规则、换名规则、代替规则前束范式自然推理系统NL 及其推理规则5.1 一阶逻辑等值式与置换规则定义5.1 设A, B是两个谓词公式, 如果AB是永真式, 则称A与B等值, 记作AB, 并称AB是等值式5.2 置换规则、换名规则、代替
2020-11-19 18:06:13
61
原创 NDK45_Android集成OpenCv
NDK开发汇总文章目录一 AS集成OpenCv库二 java层获取摄像头数据三 OpenCv进行数据处理一 AS集成OpenCv库二 java层获取摄像头数据三 OpenCv进行数据处理处理、设置灰度、旋转、识别、画矩形、UI显示...
2020-11-16 21:58:39
67
原创 05 一阶逻辑基本概念
离散数学与组合数学汇总文章目录主要内容4.1 一阶逻辑命题符号化谓词量词4.2 一阶逻辑公式及解释一阶语言L 的项与原子公式一阶语言L 的公式封闭的公式公式的解释公式的类型代换实例主要内容一阶逻辑命题符号化个体词、谓词、量词一阶逻辑命题符号化一阶逻辑公式及其解释一阶语言合式公式合式公式的解释永真式、矛盾式、可满足式4.1 一阶逻辑命题符号化个体词——所研究对象中可以独立存在的具体或抽象的客体个体常项:具体的事务,用a, b, c表示个体变项:抽象的事物,用x, y, z表示
2020-11-16 16:36:53
83
原创 NDK43_OpenCV
文章目录一 简介二 人脸定位三 LBP基本LBP圆形LBP旋转不变LBP等价LBP五 检测原理OpenCV下载地址一 简介 OpenCV是一个基于BSD许可开源发行的跨平台计算机视觉库。拥有C++,Python和Java接口,并且支持Windows, Linux, Mac OS, iOS 和 Android系统。实现了图像处理和计算机视觉方面的很多通用算法。模块功能Core核心基础模块,定义了被所有其他模块和基本数据结构(包括重要的多维数组Mat)使用的基本函数、底层数据结构
2020-11-10 19:48:11
98
原创 NDK42_No CMAKE_CXX_COMPILER could be found
VisualStudio 新建Cmake项目报错No CMAKE_CXX_COMPILER could be found严重性 代码 说明 项目 文件 行 禁止显示状态错误 CMake Error at c:\users\pf0zybaj\source\repos\CMakeProject1\CMakeLists.txt:7 (project):No CMAKE_CXX_COMPILER could be foundTell CMake where to find the compiler b
2020-11-10 19:22:37
90
原创 NDK41_NDK层实现gif图片播放
NDK开发汇总文章目录一 gif编码原理二 Android常见的gif播放方式三 利用系统源码实现gif播放1 实现步骤2 主要代码3 Demo一 gif编码原理gif编码原理图形控制扩展块(Graphic Control Extension)固定值:0xF9作用:用来跟踪下一帧的信息和渲染形式注释扩展块固定值0xFE作用 :可以用来记录图形、版权、描述等任何的非图形和控制的纯文本数据图形文本扩展块固定值0x01作用:控制绘制的参数,比如左边界偏移量应用程序扩展固定
2020-11-06 09:32:11
76
原创 性能优化30_CPU Profiler检查 CPU 活动
Android性能优化汇总文章目录一 CPU Profiler作用记录和显示的信息二 CPU Profiler 概览记录跟踪数据1 从 CPU Profiler 顶部的下拉菜单中选择记录配置,点击 Record2 与应用交互,完成时点击 Stop一 CPU Profiler作用优化应用的 CPU 使用率能带来诸多好处,如提供更快、更顺畅的用户体验,以及延长设备电池续航时间。记录和显示的信息系统跟踪数据方法和函数跟踪数据对于应用进程中的每个线程,您可以了解一段时间内执行了哪些方法 (Jav
2020-11-05 17:24:22
58
原创 NDK39_AndroidFix热修复
一 JAVA层逻辑ART(Android Runtime)是Android 4.4发布的,用来替换Dalvik虚拟,Android 4.4默认采用的还是DVM,系统会提供一个选项来开启ART。在Android 5.0时,默认采用ART,DVM从此退出历史舞台。public class DexManager { private Context context; private static final DexManager ourInstance = new DexManager(
2020-11-02 17:30:22
69
原创 04 命题逻辑的推理理论
离散数学与组合数学汇总文章目录一 推理的形式结构1 推理的形式结构2 推理定律-重言蕴涵式二 自然推理系统P推理规则直接证明法附加前提法归谬发(反证法)一 推理的形式结构1 推理的形式结构2 推理定律-重言蕴涵式二 自然推理系统P推理规则直接证明法附加前提法归谬发(反证法)...
2020-10-24 22:45:31
90
1
原创 NDK38_RTMP:音频编码与推流
NDK开发汇总文章目录一 集成faac1 下载编译faac生成静态库和.h头文件2 项目添加libfaac.a和.h头文件,CmakeList:二 获取音频AudioChannelLivePusher三 音频解码与推送native-libAudioChannel四 Demo一 集成faac1 下载编译faac生成静态库和.h头文件2 项目添加libfaac.a和.h头文件,CmakeList:cmake_minimum_required(VERSION 3.4.1)# 引入指定目录下的CMak
2020-10-21 12:58:56
61
原创 NDK36_RTMP:AAC
NDK开发汇总文章目录AACAAC的音频文件格式: ADIF & ADTSAAChttps://zh.wikipedia.org/wiki/%E9%80%B2%E9%9A%8E%E9%9F%B3%E8%A8%8A%E7%B7%A8%E7%A2%BC高级音频编码(Advanced Audio Coding),出现于1997年,基于MPEG-2的音频编码技术,目的是取代MP3格式。2000年,MPEG-4标准出现后,AAC重新集成了其特性,为了区别于传统的MPEG-2 AAC又称为MPEG-4 AAC
2020-10-21 12:43:38
59
原创 性能优化29_Android Profiler使用
Android性能优化汇总文章目录一 使用 CPU Profiler 检查 CPU 活动二 使用 Energy Profiler 检查耗电量三 利用 Android Profiler 测量应用性能四 使用 Memory Profiler 查看 Java 堆和内存分配一 使用 CPU Profiler 检查 CPU 活动中文链接 英文链接二 使用 Energy Profiler 检查耗电量中文链接英文链接三 利用 Android Profiler 测量应用性能中文链接英文链接四 使用 M
2020-10-20 17:31:01
76
原创 03 命题逻辑等值演算
离散数学与组合数学汇总文章目录主要内容一 等值式等值式基本等值式等值演算与置换规则等值演算的应用举例二 析取范式与合取范式范式的性质极小项与极大项实例主析取范式与主合取范式求公式主范式的步骤实例主范式的应用三 联结词的完备集联结词完备集四 可满足性问题与消解法主要内容等值式与基本的等值式等值演算与置换规则析取范式与合取范式,主析取范式与主合取范式联结词完备集可满足性问题与消解法一 等值式等值式定义2.1 若等价式A↔B是重言式,则称A与B等值,记作A<=>B,并称A<
2020-10-18 21:39:38
226
原创 NDK35_RTMP:NV21转换I420
NDK开发汇总 Android Camera对象通过setPreviewCallback 函数,在onPreviewFrame(byte[] data,Camera camera)中回调采集的数据就是NV21格式。而x264编码的输入数据却为I420格式。因此,当我们采集到摄像头数据之后需要将NV21转为I420。NV21和I420都是属于YUV420格式。而NV21是一种two-plane模式,即Y和UV分为两个Plane(平面),但是UV(CbCr)交错存储,2个平面,而不是分为三个。这种
2020-10-17 15:04:41
37
原创 NDK36_RTMP:视频编码器与推送视频数据
NDK开发汇总文章目录一 初始化二 设置数据三 推送视频数据四 Demo一 初始化native-libvoid releasePackets(RTMPPacket *&packet) { if (packet) { RTMPPacket_Free(packet); delete packet; packet = 0; }}void callback(RTMPPacket *packet) { if (packet)
2020-10-16 19:00:23
32
原创 NDK34_RTMP:摄像头调用预览
NDK开发汇总文章目录1 VideoChannel2 AudioChannel3 CameraHelper实现摄像头调用4 LivePusher 与C/C++交互5 Activity中使用6 Demo1 VideoChannelpublic class VideoChannel implements Camera.PreviewCallback, CameraHelper.OnChangedSizeListener { private LivePusher mLivePusher;
2020-10-16 18:49:34
29
原创 NDK31_Nginx流媒体服务器搭建
NDK开发汇总文章目录1. 下载nginx,并解压2. 下载rtmp并解压3. 进入nginx目录4. 执行:5. 在这个过程中可能因为环境不同而出现不同错误,比如缺少pcre、openssl等,这时候就需要安装这些库。6. 安装:7. 进入bin/conf 目录下(nginx-1.15.3/bin)8. vim nginx.conf 修改为:9. 端口占用检查: lsof -i:808010. 阿里云服务器配置安全策略,开放端口11. 配置完成后,就可以启动nginx了环境:Linux阿里云服务器
2020-10-15 18:12:45
52
原创 NDK33_最全排查UnsatisfiedLinkError: No implementation found
NDK开发汇总报错:No implementation found for java.lang.String问题排查build.gradle配置 abiFilters ‘armeabi-v7a’android { ... defaultConfig { ... externalNativeBuild { cmake { cppFlags ""
2020-10-12 09:07:13
32
1
原创 NDK32_RTMPDump与x264的交叉编译
NDK开发汇总文章目录RTMPDump交叉编译RTMP视频数据FLV tags 结构视频数据AVC 序列头其他x264交叉编译NALUIDRH.264数据文章目录RTMPDump交叉编译RTMP视频数据FLV tags 结构视频数据AVC 序列头其他x264交叉编译NALUIDRH.264数据 与HTTP(超文本传输协议)同样是一个基于TCP的Real Time Messaging Protocol(实时消息传输协议)。由Adobe Systems公司为Flash播放器和服务器之间音频、视频和数据传
2020-10-03 20:35:57
67
原创 01 复习指南
离散数学与组合数学汇总文章目录一 命题逻辑的等值演算和推理演算二 谓词逻辑的等值演算和推理演算三 集合与关系四 图论的基本概念、路与回路五 树、平面图与图的着色六 代数结构七 排列与组合八 母函数与递推关系九 容斥原理和鸽巢原理十 Polya 定理一 命题逻辑的等值演算和推理演算理解并掌握命题逻辑的基本概念,熟练掌握五个常用的命题联结词及其真值表,掌握命题与真值表的关系,以及由简单命题通过联结词构造复合命题的方法。掌握重言式、永假式和可满足公式的区别与判别方法;理解命题形式化的步骤与方法,能够熟
2020-10-02 23:00:58
32
1
原创 00 考试大纲
高款数学与组合数学是现代数学的重要分支,是计算机科学的基能理论课程。数理逻辑、集合论、图论与代数结构是离散数学的重要组成部分。要求考生对它们的基本概念有较深入的了解,能够系统地掌握命题演算、请词演算及朴素集合论的经典内容,掌握演绎推理的基本方法。掌据居论的基本定理和应用,熟悉代数系统的基本概念及定理。组合数学部分要求考生掌握各种基本的计数方法,线性常系数递卷关系的解法, Burnside引理和Polya定理的应用,容斥原理和鸽巢原理的应用等。主要内容包括:(一)命题逻辑的等值演算与推理演算.
2020-10-02 22:22:56
33
1
原创 02 命题逻辑的基本概念
符号:¬ ∨ ∧ → ←→1.1 命题与联结词非真即假的陈述句称作命题。命题的陈述句所表达的判断结果称作命题的真值,真值只取两个值:真 或假。不能被分解成更简单的命题称作简单命题或原子命题。由简单命题通过联结词联结而成的命题,称作复合命题。判断给定句子是否命题:首先判定它是否为陈述句,其次判断它是否有唯一的真值。我正在说假话这种由真能推出假、又由假推出真,从而既不能为真,也不能为假的陈述句称作悖论,悖论不是命题。定义1.1设p为命题,复合命题“非p”(或“p的否定”)称作p
2020-10-02 21:52:54
89
NDK20_线程轮询实现双进程守护
2020-04-09
JNI编程指南与规范.zip
2020-05-06
makeFile编译.zip
2020-04-23
GNU_Make_3.80_cn.zip
2020-04-21
GifPlayerDemo(无bug).rar
2020-04-17
系统关键服务是如何进行守护.zip
2020-04-12
NDK14_Linux基础:Shell命令,用户权限管理
2020-03-29
NDK14_C++基础:友元,模板方法,模板类,类型转换
2020-03-28
NDK13_C++基础:构造函数、拷贝构造函数、浅拷贝与深拷贝.zip
2020-03-26
Project2.zip
2020-03-26
Dn_lsn_9.zip
2020-03-22
NDK09_JNI编译过程及AS新建一个JNI项目
2020-03-21
lsn07_JNI获取String.zip
2020-03-15
安装包性能优化.zip
2020-03-01
责任链模式
2017-10-05
Prototype Pattern原型模式
2017-10-01
Suspenion滚动效果
2017-09-28
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人 TA的粉丝