自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

biezhihua的专栏

不积跬步,无以至千里;不积小流,无以成江海

  • 博客(266)
  • 收藏
  • 关注

原创 Android - FFmpeg 自动化构建工具(FFmpeg4.1 + OpenSSL1.1.1 + NDK13/14/1516/17/18/19)

FFmpegBuildTool (中文)Github地址:https://github.com/biezhihua/FFmpegBuildToolAndroid下FFmpeg自动构建工具。帮助你快速构建自己的FFmpeg静态库。我的环境MacOS 10.14.2NDK android-ndk-r16b (目前仅支持16b版本)架构 - armv7a/armv8a/x86/x86_6...

2019-01-09 22:59:04 2680 16

原创 App - 电影天堂第三方客户端

前言电影天堂App是电影天堂(网站版)的第三方客户端,一切资源都从该网站获取.下载地址:https://www.coolapk.com/apk/com.bzh.dyttGithub地址:https://github.com/biezhihua/DYTT使用到的技术项目架构使用了Android Architecture Compontens,其中主要涉及到的包括:LiveDataVi...

2018-10-19 18:30:16 9950 1

原创 NDK - CFLAGS、CXXFLAGS、LDFLAGS、LIBS含义

名词含义CFLAGS:用于 C 编译器的选项。CXXFLAGS:用于 C++ 编译器的选项。LIBS:告诉链接器要链接哪些库文件。LDFLAGS:GCC 等编译器会用到的一些优化参数,也可以在里面指定库文件的位置。阐释CFLAGS、CXXFLAGS,这两个变量实际上涵盖了编译和汇编两个步骤。CFLAGS: 指定头文件(.h文件)的路径,如:CFLAGS=-I/usr/include -I/path/include。同样地,安装一个包时会在安装路径下建立一个include目录,当安装过程中

2021-06-12 15:11:28 971

转载 【转载】Rust宏编程新手指南

Rust语言最强大的一个特点就是可以创建和利用宏/Macro。不过创建Rust宏看起来挺复杂,常常令刚接触Rust的开发者心生畏惧。这片文章的目的就是帮助你理解Rust Macro的基本运作原理,学习如何创建自己的Rust宏。1、什么是Rust的宏/Macro?如果你尝试过Rust,应该已经用过Rust的宏了:println!。这个宏 可以在终端输出一行文本,并且支持变量的插值。简单地说,Rust宏让你可以发明自己的语法,编写出可以自行展开的代码, 也就是我们通常所说的元编程,你甚至可以用Rust宏

2021-05-11 20:57:49 982

原创 Crash: ‘SQLiteDatabaseCorruptException: file is encrypted or is not a database‘的分析与解决

title: “Crash: 'SQLiteDatabaseCorruptException: file is encrypted or is not a database’的分析与解决”tags:先说解决方案与结论方案如果使用的Room库,那么需要按照如下方法设置JournalMode:Room.databaseBuilder(context, XXX::class.java, DATABASE_NAME) .setJournalMode(JournalMode.

2021-04-17 19:58:46 3672 2

原创 [MacOS 10.15.5 ] building for macOS-x86_64 but attempting to link with file built for macOS-x86

在编译M4和BISON的时候碰到这个错误,经过排查后发现,是MACOS升级后,默认的编译配置被/usr/local/bin的给覆盖了,导致编译时使用了错误的ld ar ranlib gcc升级后的:which ld ar ranlib gcc/usr/bin/ld/usr/local/bin/ar/usr/local/bin/ranlib/usr/bin/gcc调整一下PATH路径中的先后关系,先使用/usr/bin路径下的sudo vim /etc/paths调整为如下顺序/u

2020-07-11 13:25:19 7611

原创 LIBDSM库对多平台、多方案支持的开发与探索 - iOS

目标作为一个以跨平台为目标的三方库,iOS端是必然要支持的。从技术语言上来说,可以使用如下两个方案:OC + C++Swift + C++经过一番考虑后,放弃了第一种而采用了第二种。原因是OC的语法太丑了。Swift和C++是无法直接进行通信的,好在Swift提供了一种桥"Birdge"的方案,能让Swift和C++互调代码。由此为基础,我们就可以实现在iOS平台上,基于一份C++代码的多端支持了。设计虽然Swift和C++能通过"Birdge"的能力进行双向通信,但是有些坑还是不得不

2020-06-06 22:41:11 1022

原创 LIBDSM库对多平台、多方案支持的开发与探索 - Native Module

系列文章LIBDSM库对多平台、多方案支持的开发与探索 - 准备LIBDSM库对多平台、多方案支持的开发与探索 - Native CommonLIBDSM库对多平台、多方案支持的开发与探索 - iOSLIBDSM库对多平台、多方案支持的开发与探索 - AndroidLIBDSM库对多平台、多方案支持的开发与探索 - FlutterLIBDSM库对多平台、多方案支持的开发与探索 - U...

2020-03-14 19:25:58 16524

原创 LIBDSM库对多平台、多方案支持的开发与探索 - 准备

系列文章DSM库对多平台、多方案支持的开发与探索 - 准备DSM库对多平台、多方案支持的开发与探索 - Native CommonDSM库对多平台、多方案支持的开发与探索 - iOSDSM库对多平台、多方案支持的开发与探索 - AndroidDSM库对多平台、多方案支持的开发与探索 - FlutterDSM库对多平台、多方案支持的开发与探索 - Unity项目地址 - https...

2020-03-14 10:53:41 6892

原创 Other - 查看Lib属性

查看Lib架构:$ lipo -info ./libsplayer_core.a Non-fat file: ./libsplayer_core.a is architecture: x86_64

2019-08-11 23:12:00 210

原创 CLion - 无法断点调试

问题:CLion无法打断点调试办法:步骤 1:移除CLion的缓存配置rm -rf ~/Library/Caches/CLion*步骤 2移除工程文件配置rm -rf ~/Project/.idea/步骤 3使用CLion重新导入工程...

2019-08-03 11:11:13 9448 10

原创 Android - ViewPager - Transformer

public class TestPageTransform implements ViewPager.PageTransformer { @Override public void transformPage(@NonNull View page, float position) { int pageWidth = page.getWidth(); ...

2019-07-09 15:36:28 218

原创 IJKPlayer - OnLoad/Setup/MessageLoop/MediaCode等流程

IJKPlayer的库初始化加载流程斜体样式

2019-06-09 16:18:37 296

原创 FFmpeg - ffplay.c 流程简析

FFplay.cmain()主函数avformat_network_init()初始化网络库()This is optional, and not recommended anymore.http://ffmpeg.org/doxygen/trunk/group__lavf__core.html#ga84542023693d61e8564c5d457979c932show_banne...

2019-06-01 15:57:43 1092

原创 Mac - FFmpeg - 本地编译错误 - symbol(s) not found for architecture x86_64

问题在编译FFmpeg的时候报了如下错误:ld: symbol(s) not found for architecture x86_64clang: error: linker command failed with exit code 1 (use -v to see invocation)make: *** [ffmpeg_g] Error 1解决在配置项中加上--cc=clan...

2018-11-28 13:33:34 2943 6

原创 Android - 解决Fragment + ViewPager的生命周期问题

public class FragmentVisibleHelper implements LifecycleObserver { private static final String TAG = "VipVisibleHelper"; public interface IVisibleListener { void onVi...

2018-10-23 11:52:06 637

原创 浅析 - Android LiveData

前言https://developer.android.com/reference/android/arch/lifecycle/LiveData?hl=zh-cnhttps://developer.android.com/topic/libraries/architecture/livedata?hl=zh-cnLiveData在整个架构体系中起到了桥梁作用,此外LiveData还持有了数...

2018-09-27 15:15:07 894

原创 浅析 - Android Lifecycle Component

浅析 - Android Lifecycle Component前言简要介绍相关类Lifecycle的初始化流程怎样的?Lifecycle的状态如何改变以及如何分发的?Lifecycle是如何解析生命周期状态的?前言关于Lifecycle基础相关的使用与概念请移步这里:https://blog.csdn.net/guiying712/article/details/81176039#处理-...

2018-09-22 21:39:43 1026

原创 Android - 为Kotlin添加(logm/logd)等快捷方法

在这个地址,将文件下载到本地。让后将文件放到如下的文件夹下,如果没有可以自行创建:Windows: <your_user_home_directory>.IntelliJ IDEA<version_number>\config\templatesLinux: ~IntelliJ IDEA/config/templatesmacOS: ~/Library/Pr...

2018-08-24 17:44:09 1794

原创 EOS - 错误码记录

Error 3120000: Wallet exception该错误是由于不小心把默认的钱包文件夹删除了,在/home/xxx/目录下再创建个新的eosio-wallet文件夹就好了。

2018-08-19 12:59:05 2298

原创 EOS - 常用命令(获取余额、创建账户、发送EOS Token)

前言运行环境为Jungle Testnet网内。https://forums.eosgo.io/discussion/493/jungle-testnethttp://dev.cryptolions.io/可用节点地址:http://193.93.219.219:8888获取余额(get balance)命令格式:./cleos.sh get currency ba...

2018-08-18 11:02:41 3170

原创 EOS - Jungle Testnet - v1.2.1更新信息

电报地址:https://t.me/jungletestnetALL BPs Please upgrade to v1.2.1 ! EOS Jungle Testnetwork (EOSIO repo). In case you can’t sync - check manual below.Release: https://github.com/EOSIO/eos/release...

2018-08-18 10:28:48 991

原创 EOS - 本地构建与运行( v1.1.x )

前言按照官方手册操作,使用Docker来运行EOS总是感觉不爽,用着没有那么直观。所以采用文档中自动构建的方式来构建与运行EOS。环境构建此次采用自动构建的方式。获取 EOS源码:git clone https://github.com/EOSIO/eos --recursive使用 自动构建脚本构建EOS:cd eos./eosio_build....

2018-07-29 19:36:44 706

原创 Android - JetPack

JetpackJetpack是一系列库、工具、架构组成的,帮助开发人员快速方便的构建Anroid App。目标1) 加速开发 各个组件间相互独立,又可以彼此配合工作。使用kotlin特性能让生产效率更高。2) 消除无用代码 Android Jetpack管理各种枯燥的行为,例如后台任务、导航、生命周期管理,能让开发人员聚焦于App业务开发。3) 构建高...

2018-07-21 18:43:24 9667

原创 Android - TabLayout设计思路与实现思路

UI设计思路https://material.io/design/components/tabs.html#解剖图:https://material.io/design/components/tabs.html#anatomy行为:https://material.io/design/components/tabs.html#behavior 如何放置:https://m...

2018-07-01 23:13:04 1280

原创 Android - DelayQueue

很好的教程:http://www.baeldung.com/java-delay-queue

2018-06-21 10:35:53 266

原创 Android - ViewPagerHelper - 可以识别出ViewPager滑动方向的帮助类

Demo地址:https://github.com/biezhihua/ViewPagerHelper.gitViewPagerHelper一个可以识别出ViewPager滑动方向的帮助类。public interface IViewPagerTrendListener { /** * 当一个页面被完全选定时调用。该方法会在{@link #onPrePage...

2018-06-20 10:56:52 987

原创 Android - 不完全测试驱动开发实践 - 初级篇

前言测试驱动开发(TDD)是我一直想要尝试和使用开发方法,但是直至今天才有机会第一次将其应用到正式开发阶段。从开始的模糊,到慢慢了解如何使用,再到借助它将逻辑捋的越来越清楚,再到之后每次跑完所有测试带给我的信心,我知道这就是我想要的,开发过程再也不是碰运气,我拥有了使用代码测试代码的能力。因为是不完全从测试驱动开发,本片文章有所不准确的地方也请大家指正。感谢我的团队~导读...

2018-05-12 11:52:42 1116

原创 LeetCode - 合并两个链表

题目将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例:输入:1->2->4, 1->3->4输出:1->1->2->3->4->4解法// 遍历解法// 同时不断遍历两个链表,取出小的追加到新的头节点后,直至两者其中一个为空// 再将另一者追加的新链表最后...

2018-04-13 23:06:25 11547

原创 LeetCode - 反转链表

题目反转一个单链表。进阶: 链表可以迭代或递归地反转。你能否两个都实现一遍?解法 newHead \setup 1 : 1 -> 2 -> 3 -> 4 head nextsetup 2 : newHead ...

2018-04-13 00:15:27 3810

原创 LeetCode - 删除链表的倒数第N个节点

题目给定一个链表,删除链表的倒数第 n 个节点并返回头结点。例如,给定一个链表: 1->2->3->4->5, 并且 n = 2.当删除了倒数第二个节点后链表变成了 1->2->3->5.说明:给的 n 始终是有效的。尝试一次遍历实现。解法很简单的一道题,既然只允许遍历一次,且N一直有效,那么可以利用双指针解法(前指...

2018-04-10 23:50:01 10791 3

原创 LeetCode - 删除链表的结点

GitHub:https://github.com/biezhihua/LeetCode题目编写一个函数,在给定单链表一个结点(非尾结点)的情况下,删除该结点。假设该链表为1 -> 2 -> 3 -> 4 并且给定你链表中第三个值为3的节点,在调用你的函数后,该链表应变为1 -> 2 -> 4。解法很简单的一道题,因为给定了将要被删除的节点,而...

2018-04-09 20:33:35 858

原创 LeetCode - 数数并说

GitHub:https://github.com/biezhihua/LeetCode题目数数并说序列是一个整数序列,第二项起每一项的值为对前一项的计数,其前五项如下:1. 12. 113. 214. 12115. 1112216. 3122117. 131122218. 11132132119. ...

2018-04-03 12:00:24 1948

原创 Android - Architecture (Resource & NetworkBoundResource)

最近在研究Architecutre与相应的Demo-GithubBrowserSample,同时也利用这些技术重写了DYTT。收获很多,但是迷惑的点也有很多。相信看过GithubBrowserSample与Architecture引导的朋友对Resource与NetworkBoundResource一定不会陌生,今天主题也主要围绕这些方面:Resource的作用是什么?为什么要有它、好处...

2018-04-03 11:19:01 2289

原创 LeetCode - 字符串转整数(atoi)

GitHub:https://github.com/biezhihua/LeetCode题目实现 atoi,将字符串转为整数。提示:仔细考虑所有输入情况。如果你想挑战自己,请不要看下面并自己考虑所有可能的输入情况。说明:这题解释的比较模糊(即没有指定输入格式)。你得事先汇集所有的输入情况。atoi的要求:这个函数需要丢弃之前的空白字符,直到找到第一个非空白字符。之后从这个...

2018-04-01 10:40:53 8842 6

原创 LeetCode - 实现strStr()

GitHub:https://github.com/biezhihua/LeetCode题目实现 strStr()。返回蕴含在haystack 中的 needle 的第一个字符的索引,如果 needle 不是 haystack 的一部分则返回 -1 。例 1:输入: haystack = "hello", needle = "ll"输出: 2例 2:输入: h...

2018-03-30 10:48:01 661

原创 LeetCode - 验证回文字符串

GitHub:https://github.com/biezhihua/LeetCode题目给定一个字符串,确定它是否是回文,只考虑字母数字字符和忽略大小写。例如: “A man, a plan, a canal: Panama” 是回文字符串。 “race a car” 不是回文字符串。注意: 你有考虑过这个字符串可能是空的吗? 在面试中这是一个很好的问题。针对此题目,...

2018-03-29 10:49:31 5513

原创 LeetCode - 有效的字母异位词

GitHub:https://github.com/biezhihua/LeetCode题目给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的一个字母异位词。例如,s = "anagram",t = "nagaram",返回 trues = "rat",t = "car",返回 false注意: 假定字符串只包含小写字母。提升难度: 输入的字符串包...

2018-03-28 18:58:51 3914 5

原创 LeetCode - 字符串中的第一个唯一字符

GitHub:https://github.com/biezhihua/LeetCode题目给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。案例:s = "leetcode"返回 0.s = "loveleetcode",返回 2.注意事项:您可以假定该字符串只包含小写字母。解法https://leetcode.co...

2018-03-27 22:16:12 4493

原创 LeetCode - 颠倒整数

GitHub:https://github.com/biezhihua/LeetCode题目给定一个范围为 32 位 int 的整数,将其颠倒。例 1:输入: 123输出: 321例 2:输入: -123输出: -321例 3:输入: 120输出: 21注意:假设我们的环境只能处理 32 位 int 范围内的整数。根据这个假设,如果颠倒后...

2018-03-26 10:43:53 2027

空空如也

空空如也

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

TA关注的人

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