作者简介Leo,携程高级移动开发工程师,关注跨端技术,致力于高效、高性能开发。Jarmon,携程高级移动开发工程师,专注 Flutter、iOS 开发。一、背景随着各种多端技术的蓬勃发展,项目主体从纯 Native 项目,到 Native+RN,到现在的 Native+RN+Flutter。基于我们的业务都在 Flutter 技术栈上面,这要求我们需要嵌套展
......
334
0
0
2024-01-16
Flutter会在屏幕上绘制Widget。如果一个Widget的内容需要更新,那就只能重绘了。尽管如此,Flutter同样会重新绘制一些Widget,而这些Widget的内容仍有部分未被改变。这可能会影响应用程序的执行性能,有时影响会非常巨大。如果您正在寻找一种方法,来防止不必要的部分重绘,您可以考虑利用RepaintBoundary。在这篇博客理,我们将探
......
305
0
0
2024-01-14
引言在windows安装Android的开发环境不简单也说不上算复杂,本文写给第一次想在自己Windows上建立Android开发环境投入Android浪潮的朋友们,为了确保大家能顺利完成开发环境的搭建,文章写的尽量详细,希望对准备进入Android开发的朋友有帮助。 一、安装 JDK 官网: JAVA /javase/downloads/index
......
305
0
0
2024-01-13
目录 混淆编辑器介绍 功能说明 编译流程 二者区别 使用说明 规则文件说明 组件化混淆 1. 混淆编译器Android 代码混淆历史时期可以根据使用何种混淆编辑器分为以下两个时期: ProGuard:一个通用的 Java 字节码优化工具 R8:ProGuard 的继承者,专为 Android 设计,编译性能和编译产物更优秀
......
295
0
0
2024-01-11
WMRouter是一款Android路由框架,基于组件化的设计思路,功能灵活,使用也比较简单。WMRouter最初用于解决美团外卖App在业务演进过程中的实际问题,之后逐步推广到了美团其他App,因此我们决定将其开源,希望更多技术同行一起开发,应用到更广泛的场景里去。GitHub项目地址与使用文档详见 。本文先简单介绍WMRouter的功能和适用场景,然后
......
358
0
0
2024-01-07
1、概述 html 在android开发的过程当中,有时候会遇到这样的需求,须要显示很大的图片,而且还不容许压缩。好比显示:世界地图、 微博 长图等,那么如何完成这个需求呢? 首先咱们分析一下,图片很是大,考虑到内存的状况,咱们不能一次将整个图片加载到内存中,由于这样会OOM,而后图片的宽或者高超出了手机屏幕的尺寸,要想显示整张没有压缩过的图片,咱们只能每次
......
357
0
0
2023-09-19
目录前言一、为什么需要自定义控件二、具体步骤1.首先我们创建一个 layout xml文件:2.为自定义控件创建java类:3.在res/values下,新建一个attrs.xml文件:4.最后使用:前言你好, 我是Cici。这几天在做一个小项目的时候,用到了自定义控件,为了方便在XML中进行配置,于是需要用到自定义属性,特此记下用法,方便复习的同时也希望对
......
390
0
0
2023-09-16
目录一、如何绘制X和Y轴。1、我们来分析下,我们想知道三个坐标,那么这三个坐标是多少呢,我们该怎么计算呢? 答:这里,我是在onSizeChanged()方法中获取到了父类控件的宽度,然后把宽度分成16份,例如,下方的上下左右四个分别如下:2、这三个坐标我们有了,那就好办了,我们根据这四个参数值,就可以知道我们上面三个坐标点的坐标,在draw()方法中,连接
......
356
0
0
2023-09-15
目录Android中常用的布局方式有以下几种:(一)线性布局LinearLayout(二)相对布局RelativeLayout(三)表格布局TableLayout(四)帧布局FrameLayout(五)绝对布局AbsoluteLayout(六)网格布局GridLayoutAndroid中常用的布局方式有以下几种:线性布局LinearLayout相对布局Rel
......
453
0
0
2023-09-14
目录应用进程的启动流程1、ActivityStackSupervisor.startSpecificActivity2、ATMS.startProcessAsync3、LocalService.startProcess4、startProcessLocked函数5、ProcessList.startProcessLocked6、ProcessList.sta
......
333
0
0
2023-09-11
目录正文广播的注册广播的解注册广播的发送总结正文本文整体阅读下来相对Activity和Service的启动流程较容易,比较贴近我们日常代码开发习惯。我们曾经有个整机项目,多个APP跨进程交互,本来想采用AIDL进行的,但最终考虑到项目工期和其他同事的能力,最终在采用广播方式进行IPC。那时,自己也在想,这么多个APP相互发信息,数据量也大,对整机性能有影响么
......
473
0
0
2023-09-11
目录UIStackView常用属性常用函数UIStackViewUIStackView能够利用自动布局的功能,创建能够动态适应设备方向、屏幕大小和可用空间中任何更改的用户界面。UIStackView管理其arrangedSubviews属性中所有视图的布局。这些视图是根据它们在arrangedSubviews数组中的顺序沿堆栈视图的轴线排列的。具体布局因UI
......
356
0
0
2023-09-11
目录NSTimer - 计时器NSTimer创建计时器函数NSTimer触发与销毁计时器函数常用属性NSRunLoop - 运行循环NSRunLoop常用属性NSRunLoop常用函数NSTimer - 计时器NSTimer派生自NSObject,是一种计时器,在经过一定的时间间隔后触发,向目标对象发送指定的消息。计时器(NSTimer)与运行循环(RunL
......
348
0
0
2023-09-11
目录Excel读取excel文件:Use:输出excel文件:@ExcelWriteCell@ExcelWriteAdapterIConvertParserAdapter 接口@ExcelWriteAdapter使用方法:Use:Excelapache 为 java开发者们提供了一套excel表格读写的工具:POI ,对于一个小白来说每次读写使用POI需要写
......
334
0
0
2023-09-11
目录前言思路效果实现编译 Mac 版可执行文件内置可执行文件和 ffmpeg设置配置信息执行命令UI 实现最后前言前段时间准备做一个视频,最后需要添加字幕,手动添加太麻烦了就想在网上找一个能自动提取字幕的软件或服务,确实是找到了,但是免费版基本上都有诸多限制,比如现在视频时长等等,后来在 Github 找到一个开源的版本是使用云平台的语音识别实现的,云服务的
......
416
0
0
2023-09-10