移动开发

Android外部存储兼容(Android12)

外部存储访问权限(~Android 11) Android 12之后系统就不允许自由访问外部存储了,只能访问指定的外部存储存储,例如:context.getExternalFilesDir(Environment.type)下的外部存储,或者其他/Android/data/data下的外部存储。 <!-- Without this folders will be inaccessible

TreeUtils工具类一行代码实现列表转树 实战Java8 三级菜单 三级分类 附视频

一、序言 在日常一线开发过程中,总有列表转树的需求,几乎是项目的标配,比方说做多级菜单、多级目录、多级分类等,有没有一种通用且跨项目的解决方式呢?帮助广大技术朋友给业务瘦身,提高开发效率。 本文将基于Java8的Lambda 表达式和Stream等知识,使用TreeUtils工具类实现一行代码完成列表转树这一通用型需求。本文有配套视频,传送门直达。 二、实战编码 1、引入坐标 本坐标地址包含Tre

iOS16适配 屏幕旋转横屏

背景 iOS16之前转屏方法setOrientation:, 16之后使用无效. 虽然Xcode14/iOS16提供了新的api但还是beta版, 不能直接打包上线, 所以要在旧版适配新版本. 怎么适配 尝试了很多方法, 比如横屏时直接present一个横屏VC, 但耗时耗力, 怎么花最小代价适配iOS16, 看下面... 未升级Xcode14提前调试iOS16 下载iOS16系统支持包 放到这个

效率翻倍!大型Flutter项目快速实现JSON转Model实战

一、前言 在原生应用开发中,我们通常会使用YYModel、SwiftyJSON、GSON等库实现JSON解析,并使用JSONConverter等类似工具实现JSON自动转模型,极大的提高工作效率。 但在Flutter开发中,却并没有类似的解析库给我们使用,因为这样的库需要使用运行时反射,这在 Flutter 中是禁用的。运行时反射会干扰 Dart 的 tree shaking,使用_tree sh

iOS 编译与链接一:编译的过程

一:编译器 编译器是什么已不用多说,一句话从代码到机器码就是编译器的工作. 编译器的架构 左边输入源码,右边输出机器码 Frontend表示前端,主要负责词法分析、语法分析、语义分析、生成中间代码.这时就会进行各种检查,会报错或者警告. Optimizer表示优化器,负责中间代码的优化,去除冗余代码,优化结构 Backend表示后端,生成机器码,并且进行链接,也就是将不同的二进制

Xcode14 Charts报错问题

每年升级Xcode都纠结要不要升级,升级后项目就会莫名报错,今年也不出意外报错了 Charts项目报错 image.png 其实报错后第一时间去github官方查看,发现很多类似的问题,给出的解决方案是升级到4.1.0,但是pod install查不到最新库一直报错 然后尝试下载最新代码手动引入该库,运行后import algorithms库报错,尝试引入失败后放弃了 解决办法: 实

Retrofit的原理解析

前言 上篇文章我们分析了OkHttp的原理,不难看出它更多的还是和TCP/IP打交道,做了请求和响应的处理,今天我们来介绍另外一位主人公,那就是我们的Retrofit,它更多的是对OkHttp做了一层封装,方便了我们调用接口,并且对数据进行了转化,对业务侧更加友好。 首先我们来看看它的初始化,慢慢剖析它的源码吧。 Retrofit retrofit = new Retrofit.B

AOSP学习(一)Ubuntu编译Android13系统源码

前言 做Android应用好多年,一直对AOSP无所知,都不知道什么东西,目前车载那么火,就想介入进去,开始尝试去编译一下系统源码,然后去看了一下Android官网,目前最新的版本还不支持mac和window,只支持ubuntu,去整了个硬盘准备刷个系统,可能是Macmini原因,一直没能成功,很尴尬,最后整了虚拟机。 整个过程挺麻烦的,我下载是Android13最新的源码,因为源码需要翻墙,我用

揭秘 Android 高级工程师面试秘籍:从源码到实战全方位剖析

揭秘 Android 高级工程师面试秘籍:从源码到实战全方位剖析 一、引言在竞争激烈的 Android 开发领域,想要成为一名高级工程师并在面试中脱颖而出并非易事。Android 高级工程师不仅需要具备扎实的基础知识,还需要对 Android 系统的源码有深入的理解,能够熟练运用各种开发技巧解决实际问题。本文将深入剖析 Android 高级

543. 【博客开发】开发进度:基本界面已实现

一、首页 首页 阅读摘要:好记性不如烂笔头,在互联网时代,拥抱个人的互联网记事本。未来将支持云端速递摘要到手机的功能 文章锦集:我们的创作都在这儿,精彩的创作不仅是才华的横溢,更是不朽的人生。未来将支持更多社交特性 图片足迹:旅行过程中的绝美风景将永远定格在记忆深处。未来将支持更多社交特性 成长规划:定下我们的目标,每天更新我们的进度,让成长有迹可循。未来将支持更多社交特性