移动开发

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

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

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

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

Flutter 组件 postgres_crdt 的适配 鸿蒙Harmony 实战 - 驾驭分布式无冲突复制数据类型、实现鸿蒙端高性能离线对等同步架构方案

欢迎加入开源鸿蒙跨平台社区:#Flutter 组件 postgres_crdt 的适配 鸿蒙Harmony 实战 - 驾驭分布式无冲突复制数据类型、实现鸿蒙端高性能离线对等同步架构方案前言在鸿蒙(OpenHarmony)生态的分布式协作编辑器、多端同步的即时通讯资产库以及需要实现“本地优先(Local-first)”架构的各类大

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

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

(二)Android引入ffmpeg编译后的so库

如何编译ffmepg的动态链接库,可以看这里:#。 1、新建项目,将编译好的ffmpeg库,拷贝到项目的libs文件夹中。 image.png 2、在src/main路径下,创建cpp文件夹,将编译好的头文件放到cpp文件夹下,并创建一个native-lib.cpp文件(暂时不需要在里面写代码) image.png 3、创建CMakeLists.txt文件 ima

Android 带阴影的 TextView

要想实现带阴影的 TextView,主要是设置下面4个属性 android:shadowColor:设置阴影颜色,需要与 shadowRadius 一起使用 android:shadowRadius:设置阴影的模糊程度,设为0.1就变成字体颜色了,建议使用3.0 android:shadowDx:设置阴影在水平方向的偏移,就是水平方向阴影开始的横坐标位置 android:shadowDy:设置阴

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

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

Android外部存储兼容(Android12)

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

24:JS 原型链,原型链的顶端是什么?Object 的原型是什么?Object 的原型的 原型是什么?在数组原型链上实现删除数组重复数据的方法

能够把这个讲清楚弄明白是一件很困难的事, 首先明白原型是什么,在 ES6 之前,JS 没有类和继承的概念,JS 是通过原型来实现继承的,在 JS 中一个构造函数默认带有一个 prototype 属性,这个的属性值是一个对象,同时这个 prototype 对象自带有一个 constructor 属性,这个属性指向这个构造函数,同时每一个实例都会有一个proto属性指向这个 prototype 对象,