Swifty Blog

Thinking will not overcome fear but action will.

Kotlin session(1)

Function object is not anonymous class

During the developing sometimes we need develop Kotlin and Java in same project. Some actually behaviour may not same as we think. Here is one example: The below code is not correct and will cause...

Tinker hotfix 原理

此文转自https://www.zybuluo.com/dodola/note/554061

此文转自@dodola 原文地址:https://www.zybuluo.com/dodola/note/554061 前言 从微信公众号介绍 Tinker 开始就一直关注 Tinker,自己也一直在做热修复相关的开发,但一直都是在踩坑的状态,在 MDCC 的时候也和邵文同学聊了一下,从看到框架代码开始就觉得其稳定性相当的好,而整个框架里我在意的几部分是: 1. DexDiff 我觉得这...

gitlab CI使用bitbucket submodule

如何集成SSH到gitlab CI

事件描述 最近一个新的项目开在了gitlab.然而里面的submodule依然依赖bitbucket一个private repository,导致gitlab没有权限拿到bitbucket的repository。 解决方法 先使用ssh-keygen本地生成private key和public key ssh-keygen Generating public/private rsa key...

目前Android手机屏幕和DrawableAsset简单探讨

分析 上图是Android res系统使用图片resource时根据屏幕密度选择的不同文件夹,如果当前文件夹没有,会找dpi最靠近的相邻文件夹。 通过友盟大数据分析计算,5-5.7寸的手机接近80%,5-6寸超过90%,总体屏幕分辨率720P,1080P主导但趋势下降,高分辨尺寸比例在上涨。 计算可知 当前市面上屏幕密度ppi约为 从低端百元机300ppi(以599红米6A)到三星S...

MVC,MVP,MVVM心得感悟

1.前言 最近项目不忙,闲来无事浅谈三种框架,不涉及任何框架解释以及范例代码,不熟悉的同学请先移步google搜索各种架构的解释和范例。本文仅描述个人心得体会,以及使用各类框架的适合场景。欢迎指出问题,讨论。 2.MVC 几年前刚开始写Android时一直用的MVC架构,此种架构也是google最开始在Android上使用的架构,AOSP中各类源码也是使用的此类架构。 使用之后觉得MVC框...

Git和区块链的相似性和差异性比较

偶尔看到 @温国兵 写的 从 Git 到区块链,觉得很有意思,但还有点意犹未尽。 于是打算仔细分析一下。 一、相似性 分布式 Git 确保每个代码仓库在本地保留完整的项目库,而不仅仅是自己在工作的这个分支和自己的提交历史。同时也保留了最近这次pull 下来后的所有快照和索引信息。 区块链上,每个节点在本地保存完整数据库,而不仅仅是自己的交易信息。 可追溯性 图1: 比...

Broswer loading time

Broswer loading time in popular system and devices

上图是部分桌面浏览器与移动端浏览器对于 1MB 的 JavaScript 包体进行解析的时间对比,显而易见的可以发现不同配置的移动端手机之间的巨大差异。当我们应用包体已经非常巨大的时候,使用一些现代的打包技巧,譬如代码分割,TreeShaking,Service Workder 缓存等等会对启动时间有很大的影响。另一个角度来看,即使是小模块,你代码写的很糟或者使用了很糟的依赖库都会导致你...