iOS 中为什么更新UI都要放在主线程 分析:首先在子线程中是不能进行UI 更新的,而可以更新的结果只是一个幻像:因为子线程代码执行完毕了,又自动进入到了主线程,执行了子线程中的UI更新的函数栈,这中间的时间非常的短,就让大家误以为分线程可以更新UI。如果子线程一直在运行,则子线程中的UI更新的函数栈 主线程无法获知,即无法更新。 其次因为开辟线程时会获取当前环境,如点击某个按钮,这个按钮响应的方法是开辟一个子线程,在子线程中对该按钮进 移动开发 2024年11月03日 134 点赞 0 评论 5887 浏览
Android卡顿监控 实现思路 卡顿监控主要监控:慢方法的监控、ANR的监控、掉帧的监控。其实现方案主要有三种: Looper的Printer在消息执行前后的打印,计算出消息执行时间。 利用Choreographer向其注册CALL_BACK, 监听Vsync的开始从而得到上一帧的执行时间。 利用插桩的方法计算每个方法的执行时间。 比如对慢方法、ANR的监控,则是对主线程的Looper的消息的监听,对掉 移动开发 2025年03月31日 63 点赞 0 评论 5710 浏览
Xcode14.3打包的APP在iOS13.x上启动崩溃闪退 Xcode14.3 ,iOS13.6.1, iOS13.6, iOS13.3, iOS13.x 今天用Xcode 14.3打包安装在iOS 13.x的手机启动崩溃,但是连着Xcode调试时没有问题,不连着Xcode14.3时启动APP就闪退。 从苹果官网看到也有不少人遇到,但是没有具体的解决方案。 目前从以下几点处理这个问题: 1.降级Xcode到14.2打包可解决该问题 2.app 最低目标版 移动开发 2024年11月14日 73 点赞 0 评论 5673 浏览
揭秘 MySQL 数据类型:深入理解每种类型的使用与区别 文章目录 数值类型 tinyint类型 bit类型 小数类型 float(小数) decimal 字符串类型 char varchar char和varchar比较 日期和时间类型 enum和set MySQL当中数据类型的分类 数值类型 tinyint类型数值越界测试: mysql> c 移动开发 2025年04月15日 168 点赞 0 评论 5633 浏览
iOS关联对象objc_setAssociatedObject探讨 主要函数为: //为给定的对象设置一个关联值 public func objc_setAssociatedObject(_ object: Any, _ key: UnsafeRawPointer, _ value: Any?, _ policy: objc_AssociationPolicy) //返回与给定键的给定对象关联的值 public func objc_getAssociatedObj 移动开发 2025年03月31日 91 点赞 0 评论 5491 浏览
adb shell input text不能输入中文的解决方案 原因 adb默认是不支持Unicode编码的,无法通过adb shell input text 命令输入中文到手机或者模拟器。 解决步骤 1、安装ADBKeyBoard.apk文件(直接搜索就能找到) 打开手机或模拟器,adb install ADBKeyBoard.apk安装该输入法 在手机上直接安装也可 2、设置默认输入法 打开手机设置 -> 点击语法与输入法 -> 点击输入法管 移动开发 2024年11月17日 129 点赞 0 评论 4691 浏览
Dart简介4--异步支持 说明 在很多语法中,回调处理异步任务是很常见的操作,然而回调多了是一件很老火的事情。Dart给了我们很友好的方式,可以允许我们写出和同步代码很像的异步代码。 1,Future Future一个异步操作的最终完成(或失败)及其结果值的表示。简单来说,它就是用于处理异步操作的,异步处理成功了就执行成功的操作,异步处理失败了就捕获错误或者停止后续操作。一个Future只会对应一个结果,要么成功,要 移动开发 2024年10月29日 166 点赞 0 评论 4637 浏览
RecyclerView卡顿案例和解决方案 记录一次RecyclerView卡顿案例和解决方案。 需求:界面由两部分组成,顶部一个图片,图片下面是列表。在列表滑动时,图片跟着滑动。 实现:NestedScrollView [ LinearLayout [ ImageView , RecyclerView ] ]。 结果:当数据量较大时,RecyclerView 会越划越卡。 原因:NestedScrollView 嵌套 RecyclerVi 移动开发 2025年04月06日 128 点赞 0 评论 4622 浏览
Glide源码分析之加载图片URL 简介 Glide 作为Android开发过程中常见的图片加载工具,在我们日常开发中用到到越来越多.但是个人也只是停留在用的状态.最近时间充裕简单的梳理了一下Glide 加载网络图的流程 流程 1.1 Glide.with(content) 得到RequestManagerRetriever初始化了RequestManager和Glide. @NonNull public static Reque 移动开发 2025年04月15日 104 点赞 0 评论 4620 浏览