Android 开发
字节流动
技术人,8 年大厂经验,熟悉 OpenGL、FFmpeg、Vulkan、Camera 开发,日常技术干货、个人总结、职场经验分享。
展开
-
Android 加载.9 png NinePatch 图片为 bitmap
【代码】Android 加载.9 png NinePatch 图片为 bitmap。原创 2023-10-13 19:30:14 · 193 阅读 · 0 评论 -
视频图像处理中的错帧同步是怎么实现的?
一般 Android 系统相机的最高帧率在 30 FPS 左右,当帧率低于 20 FPS 时,用户可以明显感觉到相机画面卡顿和延迟。我们在做相机预览和视频流处理时,对每帧图像处理时间过长(超过 30 ms)就很容易造成画面卡顿,这个场景就需要用到错帧同步方法去提升画面的流畅度。原创 2020-04-23 18:33:46 · 1886 阅读 · 0 评论 -
adb pull 某一路径下的同一类文件
adb pull 某一路径下的同一类文件@echo offsetlocal enabledelayedexpansionif %1.==. ( echo Wilcard parameter is required. goto end)for /F "tokens=* USEBACKQ" %%F in (`adb shell ls %1`) do ( set tex...原创 2020-03-25 15:16:03 · 4292 阅读 · 0 评论 -
Android 复制拷贝 Assets 下的文件夹或文件到 SD 卡(copy directory from assets to sdcard android)
支持 Assets 下的文件或者文件夹拷贝到手机存储 public static void copyAssetsDirToSDCard(Context context, String assetsDirName, String sdCardPath) { Log.d(TAG, "copyAssetsDirToSDCard() called with: context = [...原创 2020-03-03 11:03:57 · 2656 阅读 · 0 评论 -
Android 设计模式之单例模式
首发于微信公众号:字节流动设计模式设计模式简而言之就是优秀的代码设计经验的总结。设计模式的产生是为了提高代码的可复用性,可扩展性以及可靠性,但是往往会降低可读性。设计模式原则单一职责原则: 一个类只负责一项职责;里氏替换原则: 子类可以扩展父类的功能,但不能改变父类原有的功能;依赖倒置原则: 面向接口编程,将依赖对象的共同特征抽象成接口;接口隔离原则: 一个类不应该实现它不需要...原创 2019-10-04 17:51:04 · 293 阅读 · 0 评论 -
Java to Kotlin 语法清单
文章写于 2017 年,首发于微信公众号:字节流动Google I/O 2017 宣布在 Android Studio 3.0 将默认支持 Kotlin 用于 Android 开发. 请注意 Google 只是宣布 Kotlin 作为 Android 开发的一级语言,并没有说要用其取代 Java ,这里很多无脑媒体进行了过度解读。作为一名合格的程序员,首先要理性看待技术迭代更新,同时要对新事...原创 2019-10-04 17:19:02 · 5838 阅读 · 0 评论 -
Java 线程的七种状态
该原创文章首发于微信公众号:字节流动Java 线程状态转换图Java 线程状态在 Java 线程的生命周期中,按复杂的并发场景考虑,可将 Java 线程的状态分为七种,分别是:新建(New),可运行(Runnable 或 Ready),运行(Running),无限期等待(Waiting),限期等待(Timed Waiting),阻塞(Blocked),结束(Terminated)。新...原创 2019-09-26 19:33:39 · 6362 阅读 · 0 评论 -
在 Android 系统源码中自定义系统服务(Custom System Service in AOSP)
该原创文章首发于微信公众号:字节流动在 Android 系统源码中自定义系统服务(Custom System Service in AOSP)配置编译环境(Initial AOSP build environment.)cd AOSP root dirsource build/envsetup.shlunch2定义 Service 的 AIDL 文件(Define service...原创 2019-09-23 19:38:05 · 10709 阅读 · 0 评论 -
Android GLSurfaceView 透明
setEGLConfigChooser(8, 8, 8, 8, 16, 0); getHolder().setFormat(PixelFormat.TRANSLUCENT); setZOrderOnTop(true); setRenderer(mRenderer);原创 2019-05-22 19:06:02 · 1132 阅读 · 0 评论 -
Android Studio 编译问题
问题1App\build\intermediates\incremental\mergeDebugResources\merged.dir\values-v28\values-v28.xml:7: error: resource android:attr/dialogCornerRadius not found.App\build\intermediates\incremental\merge...原创 2019-05-22 11:13:26 · 1725 阅读 · 0 评论 -
接口与抽象类的区别(Java 7版本)
该原创文章首发于微信公众号“字节流动”本篇从 8 个方面介绍一下,接口与抽象类的区别。抽象接口与抽象类具备抽象多类对象相同属性特征的特点,均可作为一种规范。属性(成员变量)抽象类中的成员变量与普通的 Java 类声明一样;接口中的成员变量只能是 public static final 类型的。方法实现抽象类可以有方法实现,也可以用 abstract 关键字将其抽象化;接...原创 2019-05-15 19:00:16 · 4904 阅读 · 0 评论 -
Android 进程间通信方式
该原创文章首发于微信公众号“字节流动”Android 中的 IPC 方式使用 IntentActivity,Service,Receiver 都支持在 Intent 中传递 Bundle 数据,而 Bundle 实现了 Parcelable 接口,可以在不同的进程间进行传输。在一个进程中启动了另一个进程的 Acyivity,Service 和 Receiver ,可以在 Bundl...原创 2019-05-15 18:51:53 · 4513 阅读 · 0 评论 -
Android 多线程实现方式
该原创文章首发于微信公众号“字节流动”Android 多线程实现方式通常来说,一个应用至少有一个进程,而一个进程至少有一个线程。线程是 CPU 调度的基本单位,进程是系统资源分配的基本单位。进程独享内存资源,一个进程可以看作一个 JVM ,一个进程崩溃后,在保护模式下一般不会对其它进程产生影响。同一个进程中的线程共享内存资源,一个线程死掉就导致整个进程死掉。Android 提供了...原创 2019-05-13 19:27:57 · 4857 阅读 · 0 评论 -
MVVM,RxJava和Retrofit的一次实践
该原创文章首发于微信公众号“字节流动”Sample 简介一个简单的结合 Retrofit 和 RxJava 框架实现 MVVM 架构的例子。最近在研究 Kotlin for Android,做了一个基于 Clean 架构以及 Retrofit , RxKotlin , Dagger 框架实现的 Kotlin for Android App ,更多详情请戳这里。效果预览Demo 下载...原创 2019-05-13 19:11:06 · 4686 阅读 · 0 评论 -
Android Clean 架构浅析
该原创文章首发于微信公众号“字节流动”Android 常用的架构主要有 MVC,MVP,MVVM 以及 Clean 。以上架构设计模式没有绝对的优劣之分,关键要看具体的应用场景。更多关于 MVC,MVP 以及 MVVM 介绍可以参考MVC,MVP & MVVM什么是 Clean 架构?Clean 架构是由 Uncle Bob 在 2012 年发表的, 针对 Web App ...原创 2019-05-13 18:57:42 · 14696 阅读 · 1 评论