移动开发

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

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

Runloop原理(一)

此文章的意图:当你完全细心阅读之后,对runloop认知,会成为你作为一名ios开发人员潜意识里的一部分 一、官方一张图开始 image.png 官方文档开宗介绍 Run loops are part of the fundamental infrastructure associated with threads. runloop是与线程相关的基础架构的一部分,说白了runloop

老项目迁移至AndroidX记录

Android Studio操作步骤: Refactor > Migrate to AndroidX 官网链接:?hl=zh-cn 对于老项目,直接迁移显然不可能一步到位。可以通过命令查看哪些依赖还是用的support包,然后手动修改。 查看项目依赖树命令: grad

burp suite安装及汉化过程

一、下载安装1、访问官网下载社区版本Burpsuite:Burp Suite Release Notes#community2、安装并打开二、证书&代理配置1、配置本地证书,并通过Chrome浏览器访问进行抓包Chrome设置代理 127.0.0.1:8080,与BP里面的一

第二章 性能瓶颈的分析和定位(7)

开发环境        由于Qt自带原生IDE,我们即选择Qt Creator作为开发环境,Qt Creator是一个完整的开发环境,在QML调试和性能剖析上有无可比拟的优势。安装Qt平台和Qt Creator可以从 选择Qt开源版本,下载Qt最新版本的Windows安装文件。在安装过程中,选择Qt版本5.9.6(本书写作时的最新Qt版本)

Glide适配Androidx

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

推荐一下我的 Flutter 学习资源

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

无root使用adb模式下的scene 用shizuku激活scene教程

本次教程是用shizuku和ShizukuRunner激活scene的adb模式,实现大部分功能,比较简单,如果手机已经root直接使用root模式即可。工具scene(点我下载)Shizuku(点我下载)ShizukuRunner(点我下载)教程1.首先要有一台支持无线调试的手机(安卓11以上)2.激活shizuku(具体教程看如下文章)教程&#xff5