Android SurfaceView 播放gif

Android SurfaceView 是Android系统中的高级组件,它有自己的绘制界面,可以在一个独立的线程进行UI的绘制, 因此不会阻塞主线程,这也是我们使用SuefaceView播放gif图片的原因。

Android Studio 生成so文件 及调用

so文件是C、C++的函数库,在Android中 调用这些库,使用的是JNI( Java Native interface) JNI 可以使Java程序调用本地程序或者库(一般是使用C、C++ 或者汇编语言编写)。 这篇文章 会介绍 使用Android Studio 如何生成so文件,及如何使用so

Android事件分发机制相关(备忘)
Android 样式系统 | 常见的主题背景属性

在前一篇 Android 样式系统文章中,我们介绍了主题背景与样式的区别,以及如何编写灵活的样式与布局代码用于抽离可变化部分。

Android 保活从入门到放弃:乖乖引导用户加白名单吧(附7大机型加白示例)

IM在Android上的保活问题经常在即时通讯网的论坛和技术群里被讨论,自从Android 8.0后系统大大降低了后台运行应用的保活容忍度(详见《Android P正式版即将到来:后台应用保活、消息推送的真正噩梦》),保活从黑科技横行的时代进入了技术蛮荒阶段,真要实现保活,技术难度越来越大。

安居客 Android APP 走向平台化 | 开发者说·DTalk

安居客 Android App 距离上次的模块化/组件化重构已经两年多了,重构之后很好的支撑了两年多以来的业务发展。但这个世界总是在向前走的,没有任何一种架构能够一劳永逸的解决所有问题,外部环境的不断变化相应的也要求项目架构做出改变,以此来应对环境变化所带来的挑战。

React Native 全埋点实现原理(内附赠书)

本文主要介绍如何实现 React Native 的全埋点,主要是控件点击 $AppClick 事件。该内容,会默认你有一定的 React Native 开发经验

Android View 体系竟然还能这么理解?

很多小伙伴可能在学习view的绘制流程源码的时候有点抓不住重点,所以在分析代码的时候绕来绕去脑袋晕乎乎的。今天我就来给大家化繁为简,只关注它最核心的东西。

移动端常见崩溃指标

崩溃分析,是将 Android 和 iOS 平台常见的 APP 崩溃问题进行归类分析,帮助企业根据崩溃指标快速发现、定位问题。

花椒Android客户端多变体构建实践
Android死锁初探

说到死锁,大家可能都不陌生,每次遇到死锁,总会让计算机产生比较严重的后果,比如资源耗尽,界面无响应等。

Android 11标配的新技术,再也不怕死机了!
Android 11测试版来了:这些手机第一时间跟进,看看有没有你的
Android AES加密(Kotlin)

halo~最近工作上写的东西比较简单,感觉分享不出来,最近刚好看到数据加密这一块,感觉挺不错的,也挺好用的,所以下面分享给大家!

Android架构设计--MVP模式第(二)篇,如何减少类爆炸
Android 持续滑动布局 ConsecutiveScrollerLayout 的使用

在开发项目的时候,有时候会遇到一些比较复杂的页面,需要多个不同的列表或者滑动布局、甚至是WebView,组成一个完整的页面。要实现这样一个复杂的页面,在以前我们可能会通过布局嵌套的方式,在一个大的ScrollView下嵌套多个RecyclerView、WebView、ScrollView来实现。但是这种嵌套的方式不仅会严重影响布局的性能,而且处理滑动事件的冲突也是一件头疼的事,处理不好会严重影响用户操作的体验。

Android 升级适配爬坑历程

最近接手了一个公司项目,项目比较老了,从Android 5.0之后就再也没有适配过了,然而重写时间又来不及,然后我的爬坑之旅便开始了。(以下适配方案是按照项目需求顺序来的)

Android Fragment 被回收后显示空白问题解决方案
5000字解析:前端五种跨平台技术

本文不涉及到任何代码,只讲概念层面的,结合本人在实际开发过程中的各种体验,对这几种跨平台技术进行一个点评

Hybrid 应用中 H5 与 Native 通信的那点事儿
2020年,一文点破跨平台开发框架现状

多年来,跨平台移动开发已经获得了最流行软件开发趋势之一的声誉。这并不令人意外,因为采用跨平台开发技术使得软件工程师使用同一代码就能为不同平台构建应用程序,从而节省时间、金钱以及不必要的工作。

Android死锁初探
DialogFragment引起的内存泄露
一个基于汇编的中心重定向框架
京东商城积木框架移动端动态化方案实践

Facebook “SDK 攻击” 后的一些思考

在 Android 开发中使用协程 | 代码实战
unicode编码在Android中的应用

Unicode(统一码、万国码、单一码)是计算机科学领域里的一项业界标准,包括字符集、编码方案等。Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。1990年开始研发,1994年正式公布。

Android动态权限详解

很多App在首次启动时一通弹窗,申请各式各样的权限。后来苹果为改善用户体验,在App Store审核时要求App必须在使用前一刻才能申请权限,有效改善了此类问题。比如一款直播App,当你启动App时并不需要相机、录音权限,等到你开播时才需要申请这两个权限。这一场景,其实就类似今天要提到的Android动态授权。

Android 开发最佳实践

从[Futurice](http://www.futurice.com)公司Android开发者中学到的经验。

百度App网络深度优化系列《三》弱网优化

网络优化解决的核心问题有三个,第一是安全问题,我们在系列《一》DNS优化进行了详细的讲解。第二是速度问题,我们在系列《二》连接优化也做了详细的介绍。第三是弱网问题,它是网络优化中最为复杂且需要反复验证和分析的问题,我们的系列《三》弱网优化就是要深入探讨这个问题。

百度App网络深度优化系列《二》连接优化

在系列《一》里大家了解到网络优化一般会首选优化DNS,而接下来的HTTP协议成为优化的重点,一般优化者会选择协议切换,合并请求,精简数据包大小等手段来对HTTP协议进行优化,严谨的说这都不属于网络优化的范畴。

百度App网络深度优化系列《一》DNS优化

网络优化是客户端几大技术方向中公认的一个深度领域,所以百度App给大家带来网络深度优化系列文章,其中包含系列《一》DNS优化,系列《二》连接优化,系列《三》弱网优化,希望对大家在网络方向的学习和实践有所帮助。

警告,你的内存正在泄漏...
HTTP客户端连接,选择HttpClient还是OkHttp?

Android 的任务栈 Task 与启动模式
聊聊这道【快手】面试题

Flutter在字节跳动的现状与工程实践

DX 已被弃用,请尽快迁移至 D8
更上一层楼: Android 11 首个开发者预览版到来
优秀品牌VI设计欣赏~
学配色!橙色系色彩搭配攻略

鲜明的橙色总是给人以明快、活泼、令人振奋的感觉,有着引人注目的能量,显得生机勃勃,是暖色系中最温暖的色彩。

探究!APP图标设计风格

APP图标风格的选择,基本定位了整个APP界面与APP的类型风格。

国外APP界面设计欣赏

国外APP的一些界面

为什么不仅继承Observale而且使用Observale.create()?
为什么需要用 GIT SHA 管理Crash
开发你自己的Android 授权管理器
我们为什么要用fitsSystemWindows?
Android主题动态切换开源库Prism基本原理3-搭配Palette使用
如何修复编译时的MultiDex崩溃

Copyright© 2013-2020

All Rights Reserved 京ICP备2023019179号-8