移动开发

单例模式(一)—懒汉模式

前言 单例模式模式无需多言,就是只允许生成一个对象,这种设计模式在数据库连接对象的使用上比较频繁,当然在其他场景下也有使用。然而单例模式的实现也有多种方式,今天就让我们来学习下单例模式的懒汉模式。 今天涉及内容: 懒汉模式编写的几个特点 懒汉模式代码实现 懒汉模式优缺点 一. 懒汉模式 编写的几个特点 作为单例模式中的懒汉模式,具有以下特点: 私有无参构造函数 声明静态私有类对象 静态

聊聊libffi的调用流程

背景 花了点时间分析了下libffi的调用流程,做个总结。 什么是libffi libffi是ffi的主流实现方式,其主要是用C和汇编来实现的。 原理和用法市面上已经很多,下面这两篇是我觉得讲得较为通俗易懂的,这里就不做过多的解释了。 外部函数接口 FFI —— 虚拟机中重要但不起眼的组件 使用 libffi 实现 AOP libffi的调用流程 PS:最近换了M1,所以以下的代码都是ARM64架

List并发线程安全问题

一、发现并发问题 1.1 测试代码 public class Client { public static void main(String[] args) { List<Integer> list = new ArrayList<>(); new Thread(() -> { for (int i =

Android10.0 StatusBar之状态栏

学习笔记:参考资源 一、StatusBar简介 Statusbar包含导航栏(NavigationBar, 位于左侧、右侧或者底部)和状态栏(StatusBar, 位于顶部, 可下拉)两个部分。 Statu

2023-03-22法条语言AI与GPT沟通(37

使用chatGPT进行日常咨询,提出问题是一个重要的步骤。但是,最关键的不只是提出问题,而是如何表达问题,以及如何与chatGPT进行交互和沟通。 以下是几点建议: 1. 确定需要咨询的领域或主题,以便chatGPT能够更好地理解你的问题,并为你提供相关的答案和建议。 2. 设定几个层次的问题,从宏观到微观,逐步深入探索问题的根源和解决方案。 3. 使用清晰、简洁、明确的语言,以便chatGP

ViewModel源码阅读笔记

MVVM模式实现了数据和页面的分离。ViewModel的生命周期需要跟随引用他的activity或者fragment。接下来我们就来看看,ViewModel是如何实现生命周期的伴随的。 先从ViewModel的创建开始看 XXXViewModel viewModel = new ViewModelProvider(fragment).get(XXXViewModel.class) kotlin

Android-推荐一个给View添加点击效果的库(TouchEffects)

图片来源网络,入侵必删 在Android开发中,我们可能会遇到需要给特定的View添加点击效果。这篇博客分享一个简单实现点击效果的开源库,希望能帮小伙伴们提高开发效率。 TouchEffects TouchEffects能够帮助你更快速方便的增加点击时候的效果,TouchEffects的目标是打造一个稳定、全面、且能更方便的自定义及个性化的一款点击效果框架。 引入项目 1、设置mave

SDWebImage5.11源码分析(二)

接上一篇文章继续分析SDWebImage5.11的缓存部分 SDImageCache 缓存获取数据,主要是通过key缓存(上一篇文章有说),cacheType判断缓存方式,options进行缓存拓展。主要内容如下: a. 对cacheOptions类型进行筛选 b. 进入queryCacheOperationForKey方法,对具体缓存方式进行划分,其中包括内存缓存,磁盘缓存。然后又在各自缓

Android DataBinding系列详解(四)

对DataBinding简单使用基本讲解完成了,大家一定很好奇DataBinding怎么实现的呢,下面结合源码讲解DataBinding的实现原理。 现在就从代码一步一步看。如图1,通过DataBindingUtil setContentView得到ActivityMainBinding对象 图1 省略中间步骤,最终是调用sMapper.getDataBinder,sMapper是Da

深入探究React Native:从基础到实战

本文还有配套的精品资源,点击获取 简介:React Native是一个由Facebook推出的开源框架,用于构建跨平台的原生移动应用程序。本项目《MeizhiReactNative——初探React Native世界》将带领初学者入门React Native,涵盖框架基础、项目结构、环境搭建、基本组件使用、样式系统、网络请求与数据管理