240 发简信
IP属地:北京
  • 手撸一个多手势处理器,移动、缩放、旋转

    原谅我真的懒得写字了,还是把代码直接贴出来,也方便自己以后需要的时候来抄。 首先是处理器本体: 本着面向对象的原则,把单指和两指的后续处理分别交给对应的接收器。 单指移动处理...

  • 120
    FFmpeg和OpenSSL的编译与使用

    引言 目前在学习FFmpeg的使用,肯定是要从源码编译开始一步步摸啦,编译过程中也是遇到了大大小小很多问题,查到的资料基本也都是比较老旧的版本,经过各种试错吧,终于是编译成功...

  • 120
    ijkplayer编译:在2022年使用M1芯片遭受毒打

    引言 在接手的一个旧项目中,有多处用到视频播放的能力,项目中使用的是一个叫universalvideoview的三方库,性能确实差,视频加载得也太慢了,正好碰上项目需求不是很...

  • 120
    Gradle:Maven方式上传Library

    引言 在单一项目中,特别是模块化的开发模式下,我们通常会抽出一些全局共用的逻辑,放在一个 base-xxx 之类的模块里,在其他模块中,通过implementation pr...

  • 120
    我能用注解处理器APT做什么 - 手写一个路由框架

    引言 一般来说,我们在项目开发中,功能性类似的同一层级,会有许多相同逻辑。很多时候,一个简单有效的方法,就是定义base类,比如我们已经司空见惯以至于写习惯了的BaseAct...

  • 120
    安卓项目使用GItLib CI/CD实现持续集成

    很长时间没有更新博客了,恰巧最近在为公司的地图SDK搭建自动编译与发布环境,便顺手记录下来。这个项目本来我就已经使用Jenkins搞了一个打包的Job了,但因为其它项目陆续使...

  • 120
    Kotlin协程

    什么是协程? 官方描述:协程通过将复杂性放入库来简化异步编程。程序的逻辑可以在协程中顺序地表达,而底层库会为我们解决其异步性。该库可以将用户代码的相关部分包装为回调、订阅相关...

  • 120
    使用AS将 Module 打包成 Jar 包和 aar

    写在前面:本文系转载文章,非原创,侵删。原文链接:https://www.cnblogs.com/xinaixia/p/7660173.html 整理记录 AndroidSt...

  • 基于AS的代码混淆配置

    什么是代码混淆 代码混淆(Obfuscated code)亦称花指令,是将计算机程序的代码,转换成一种功能上等价,但是难于阅读和理解的形式的行为。代码混淆可以用于程序源代码,...

  • 详细的Retrofit2 + RxJava2封装

    首先,本文不是介绍或讲解,而是实例。知道点进来的最想要什么,我也不写废话,直接贴代码! 需要添加的依赖 这段才是本体 定义一个接口 用起来! 以上 转载请注明出处,@via ...

  • 一个Android开发者眼中的Kotlin

    前言 首先,现在来写这篇文章,我很惭愧。去年5月份的Google I/O 大会上,Google宣布 Kotlin成为Android 开发的1级编程语言,而我身为一个安卓开发人...

  • 120
    java代理模式与动态代理的实现

    1.什么是代理模式 代理模式的定义:为其他对象提供一种代理以控制对这个对象的访问。在某些情况下,一个对象不适合或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间...

  • 120
    安卓中使用MVP+DataBinding

    上回书说到 安卓中三种开发模式的简单介绍,这次我们来详细聊一聊MVP模式的用法,以及怎样配合DataBinding使用。 先上个概述: MVP: Model, View, P...

  • 安卓DataBinding详细使用方法

    当DataBinding刚出来的时候,在下也曾多方查阅文档,了解特性、用法、优缺点(没错,只爱用度娘说的就是我了)。然后知晓了它是怎样灵活,怎样注入,配合MVVM怎样省时、省...

  • 120
    安卓-开发模式探究

    近来工作任务不重,但是作为一个正在努力追赶平均水平的开发者[笑],必须不停的提升自己,下面就来掰一掰安卓中的开发模式使用,后面会介绍 MVP+DataBinding 的用法。...

个人介绍
一只从入门到放弃的猿