移动开发

[ANR] 优化SharedPreference apply引起的ANR问题

前一篇文章[ANR]为什么SharedPreference会引起ANR,我们知道, SharedPreference的apply方法虽然是异步写入文件的,但是会在Activity和Service生命周期方法调用的时候,等待所有的写入完成,可能引起卡顿和ANR。 解决方法 为了快速解决这个问题,我们可以通过代理系统SharedPreference的所有apply方法,改为直接在子线程调用commit

Flutter-FlutterBloc的使用

BLOC说明 bloc 是一个可预测的状态管理库,有助于实现 BLoC 设计模式。简单和轻便,高度可测试,适用于 Dart、Flutter 和 AngularDart。 简单使用 声明自定义bloc类,继承于Bloc, 然后添加相应的事件对象和状态的处理(通过emit把新的状态反馈出去),如下: /// APP全局Bloc类 class AppGlobalBloc extends Bl

基于Adafruit Feather nRF52832与iOS的BLE数据采集与实时图表显示

1. 项目概述与核心价值 如果你手头有一块Adafruit Feather nRF52832开发板,想让它采集的传感器数据实时显示在iPhone上,却苦于找不到一个现成、好用的App,那么这个项目就是为你准备的。我最近完成了一个从硬件固件到iOS App的完整开发流程,核心目标就是让Feather nRF52832通过蓝牙低功耗&#x

iOS 18.1 - iOS 26.x 抢先开启国行 Ai、分屏,Misaka26 工具来袭!!!!!

Straight_tamage 抢先发布工具,实现一键修改。在11月16日上午时段,Straight_tamage 大佬针对 Misaka 工具更新,并且重命名为 Misaka26 工具,版本号为 26.1.0 版本,利用新的备份恢复数据的方法实现一键修改,之前提到的功能几乎都能改成。废话不多说,直接

Glide适配Androidx

项目地址:glide 1. Android Studio中使用Glide Glide从4.9.0版本之后支持Androidx(最新已经到glide.4.13.1),在使用As时可以按照该项目的介绍,直接在Gradle中进行如下配置: repositories { google() mavenCentral() } dependencies { implementation '

项目组件二进制化

组件二进制化 优点: 加快编译速度 将固定的业务模块化,方便管理 共享业务功能又保密实现逻辑 开发第三方SDK 目录: 二进制化的优点 命令扩展 分类 静态库动态库制作方法 项目组件二进制化实操 命令扩展 查看库版本信息 终端cd到库所在的父目录,使用命令 $ lipo -info xxx.a 查看framework的信息 终端cd到framework所在的父目录,使用命令 $ f

Android Studio 中文字大小的单位详解

文章目录 一、Android 中的尺寸单位 1. dp (Density-independent Pixels - 密度无关像素) 2. sp (Scale-independent Pixels - 可缩放像素) 3. px (Pixels - 像素) 4. pt (Points - 磅) 5. mm (Millimeters - 毫米) 和 in (Inches - 英寸)

uniapp自定义iOS基座调试

1.直接打开选择调试运行到iOS基座 image.png 2.如果连接的是真机的那可以检测到设备 image.png 3.企业账号本来就不允许他们这么用的 之前我也研究过他们的签名模式是不是很牛逼,看来还是被苹果限制了,如果使用模拟器,那么对于普通开发者来说或者刚毕业的大学生来说,成本就高了.要搞个Mac电脑装个Xcode,当然你可以搞个黑苹果.不过现在大学生好像都

推荐一下我的 Flutter 学习资源

我接触 Flutter 才半年,但进步却很大,这主要是我找到了好的学习资源,今天就把这些资源推荐给大家。 掘金的 Flutter 专区 网址是: Flutter 相关的文章,建议每天关注这里的新文章。并把过去的最热文章翻看一些。 推荐关注郭树煜的掘金博客 @恋猫de小郭,或他的公众号 @GSYTech。 Flutter