Swift-技巧(四)设置照片尺寸和格式

平时实现拍照功能时,都是网上一通搜索,整体复制粘贴,自称无脑实现。但是当要求照片是不同的尺寸和格式( JPEG)时,就费力搞照片。其实在设置拍照时,就可以直接设置照片的尺寸和格式。
分类: 移动开发 发布时间: 10-12 00:30 阅读次数: 0

iOS的渲染循环、离屏渲染原理、卡顿原理

在iOS开发中,卡顿的问题是一个绕不开的问题,在这里我们从iOS的渲染循环(Render Loop)的角度来分析在渲染过程中可能会出现卡顿的原因。 渲染循环 VSYNC 渲染循环是一个连续性的过程。通
分类: 移动开发 发布时间: 10-12 00:30 阅读次数: 0

iOS注入小知识:重签名、逆向分析方法

tweak是各种破解补丁的统称,iOS的tweak大致可分为两种: 在cydia上发布的,需要越狱才能安装,大部分是deb格式的安装包
分类: 移动开发 发布时间: 10-12 00:30 阅读次数: 0

FFmpeg的AAC解码实战

1、FFmpeg音频解码流程 如上图所示是通过FFmpeg进行音频解码的流程。 2、 代码实战 2.1、获取解码器 通过调用 avcodec_find_decoder函数根据ID来查找注册的解码器,这
分类: 移动开发 发布时间: 10-12 00:30 阅读次数: 0

Android Jetpack系列之LiveData

LiveData介绍 LiveData是一种可观察的数据存储类。LiveData 具有生命周期感知能力,遵循其他应用组件(如 Activity、Fragment 或 Service)的生命周期。这种感
分类: 移动开发 发布时间: 10-12 00:30 阅读次数: 0

ARouter 拦截器之多 module 独立运行

上篇文章 已分享了路由配置、跳转、原理、完整的效果演示gif以及源码,而且是多 module 项目演示的,算是路由 ARouter
分类: 移动开发 发布时间: 10-12 00:30 阅读次数: 0

Android:发布aar包到maven仓库以及 maven插件 和 maven-publish 插件的区别

在日常开发中,不可避免的需要把自己的 library 发布到 maven 仓库中,这样使用起来也更加方便。 发布 aar 包到 maven 仓库,主要是使用 Gradle 提供的插件: maven 插
分类: 移动开发 发布时间: 10-12 00:30 阅读次数: 0

重新理解为什么 Handler 可能导致内存泄露?

什么是 Handler 使用不当? 先搞清楚什么叫 Handler 使用不当? 一般具备这么几个特征: Handler 采用匿名内部类或内部类扩展,默认持有外部类 Activity 的引用: Acti
分类: 移动开发 发布时间: 10-12 00:30 阅读次数: 0

java中的IO、NIO、Okio

Java IO是面向流的,这意味着是一次性从流中读取一批数据,这些数据并不会缓存在任何地方......
分类: 移动开发 发布时间: 10-11 23:57 阅读次数: 0

Android 架构之Glide源码解读(中)

在上一篇中,主要讲解了with在Glide中主要帮我们做了生命周期相互绑定的相关工作以及其他基础知识,在这一篇中,将会对load、into进一步解读相应的源码。
分类: 移动开发 发布时间: 10-11 23:57 阅读次数: 0

Android Vsync原理简析

我们都知道,计算机是基于二进制数据流来进行工作的,而且又知道,计算机五大组成部分是各司其职的,其中屏幕就是专门来"渲染"图像的,既然要显示图像,肯定要有显示的数据,这些数据从哪来呢?答案就是cpu(*
分类: 移动开发 发布时间: 10-11 23:57 阅读次数: 0

【程序员小知识】使用PlantUML画UML(下) 时序图

UML 序列图 序列图是仅次于类图的最常用 UML 图。 序列图将交互关系表示为一个二维图,纵向是时间轴,时间沿竖线向下延伸;横向轴代表了在协作中各个角色,一般是一个 Class 的对象,用一条虚线代
分类: 移动开发 发布时间: 10-11 23:23 阅读次数: 0

Android 开发太难了,这异常竟然捕获不到?

背景 之前写的博客大家吐槽没有具体场景,这篇文章我们说一下背景。 有一天小张正在开心的和大家划着水,忽然运营同学嗷的一声拉了个群,告诉我线上出现高频聚集的崩溃反馈。 小张作为稳定性指标的负责同学,心理
分类: 移动开发 发布时间: 10-11 10:03 阅读次数: 0

APP门户界面设计

实验环境 Android Studio AVD环境 要求 内容:请根据课程实操实现APP门户界面框架设计,至少包含4个tab页,能实现tab页之间的点击切换; 技术:使用布局(layouts)和分段(
分类: 移动开发 发布时间: 10-11 08:23 阅读次数: 0

RxSwift学习:序列核心逻辑分析(二)

上一篇文章:RxSwift学习:函数响应式编程思想(一)只是简单的分析了序列的核心逻辑。本篇博客主要针对上一篇做一下更加深入的探讨。 函数式编程详细教程参考:理解函数式编程 Swift书籍资料下载:下
分类: 移动开发 发布时间: 10-11 07:17 阅读次数: 0

在没有计算机的情况下切换 iOS 渲染调试选项

您是否曾经离开过您的计算机,在您的应用程序上玩弄一项功能,并在那时发现了您想要深入了解的性能问题? 我们用来调试这些问题的一些工具,比如 Instruments,已经足够强大了,我不会责怪它们需要单独
分类: 移动开发 发布时间: 10-11 07:17 阅读次数: 0

iOS 多线程-GCD

前言 Hi Coder,我是 CoderStar! 今天给大家带来多线程系列的第二篇文章 -- GCD,其大概率是我们在使用多线程时最常用的方式了。 GCD 全称是 Grand Central Dis
分类: 移动开发 发布时间: 10-11 07:17 阅读次数: 0

iOS小知识: 再次点击tabBar刷新界面数据(更新数据期间旋转tabbar图标)【包含完整demo】

1. 应用场景:适用于购物类app的首页tabBar,以及购物券类app的首页tabBar 2. 特色功能:在更新数据期间旋转tabbar的icon
分类: 移动开发 发布时间: 10-11 07:17 阅读次数: 0

Foundation of machine learning

第7章 Boosting 集成方法是机器学习中的一种通用技术,可以去结合多个预测器来创建一个更准确的预测器。本章研究了一个被称为增强的重要集成方法家族,这个方法具体来说就是AdaBoost算法。该算法
分类: 移动开发 发布时间: 10-11 07:17 阅读次数: 0

大厂Android启动优化- 4 出其不意的优化手段

常规的手段优化后,我们能解决基本的问题,但是我们得继续追求极致,本章将分享一些意想不到的手段。。。。。
分类: 移动开发 发布时间: 10-11 07:17 阅读次数: 0