带你走进灵动岛 | 京东云技术团队

2023-12-05
阅读 9 分钟
3.6k
实时活动(Live Activity),是iOS16新增的扩展组件功能,可以在灵动岛和锁定屏幕上显示应用程序的实时数据。用于追踪事件和任务进度实时活动的开始和结束都是离散的,具体画面场景如下:苹果
封面图

iOS APP包分析工具 | 京东云技术团队

2023-11-23
阅读 9 分钟
4k
分享一款用于分析iOSipa包的脚本工具,使用此工具可以自动扫描发现可修复的包体积问题,同时可以生成包体积数据用于查看。这块工具我们团队内部已经使用很长一段时间,希望可以帮助到更多的开发同学更加效率的优化包体积问题。
封面图

iOS信号量造成线程优先级反转 | 京东云技术团队

2023-11-23
阅读 2 分钟
4.3k
Thread Performance Checker (XCode14上默认开启的),这个工具会让APP在运行的时候,发现有例如线程优先级反转和非UI工作在主线程上运行等问题的时候,就会在XCode问题导航栏中提示该卡顿风险警告,可以帮助我们在开发初期就能发现并解决隐含的卡顿风险问题;这个不是崩溃,如果不想要,可以在 “Product -> Scheme ...
封面图

实用的命令行终端增强软件:Tabby | 京东云技术团队

2023-10-30
阅读 2 分钟
4.8k
Tabby是一个开源免费软件,支持Windows、macOS和Linux系统。它提供了一个高度可定制的终端界面,可以通过多种方式添加、切换和关闭终端标签页。能与 Linux 服务器轻松传输文件,支持多种主题,界面炫酷,插件丰富。它还支持通过插件扩展其功能,例如增强的滚动条、批量复制和粘贴等功能。
封面图

Android Kotlin 协程初探 | 京东物流技术团队

2023-10-24
阅读 7 分钟
5.7k
维基百科:协程,英文Coroutine [kəru’tin] (可入厅),是计算机程序的一类组件,推广了协作式多任务的子程序,允许执行被挂起与被恢复。
封面图

CocoaPods 在iOS开发中养活了这么多项目,它到底是个啥? | 京东云技术团队

2023-09-21
阅读 32 分钟
5.6k
对于iOS开发者而言,CocoaPods并不陌生,通过pod相关的命令操作,就可以很方便的将项目中用到的三方依赖库资源集成到项目环境中,大大的提升了开发的效率。CocoaPods作为iOS项目的包管理工具,它在命令行背后做了什么操作?而又是通过什么样的方式将命令指令声明出来供我们使用的?这些实现的背后底层逻辑是什么?都是本...

iOS16新特性:实时活动-在锁屏界面实时更新APP消息 | 京东云技术团队

2023-09-18
阅读 10 分钟
5.9k
之前在 《iOS16新特性:灵动岛适配开发与到家业务场景结合的探索实践》 里介绍了iOS16新的特性:实时更新(Live Activity)中灵动岛的适配流程,但其实除了灵动岛的展示样式,Live Activity还有一种非常实用的应用场景,那就是锁屏界面实时状态更新:
封面图

深入理解 Flutter 图片加载原理 | 京东云技术团队

2023-08-16
阅读 8 分钟
6.2k
随着Flutter稳定版本逐步迭代更新,京东APP内部的Flutter业务也日益增多,Flutter开发为我们提供了高效的开发环境、优秀的跨平台适配、丰富的功能组件及动画、接近原生的交互体验,但随之也带来了一些OOM问题,通过线上监控信息和Observatory工具结合分析我们发现问题的原因是由于Flutter页面中加载的大量图片导致的内存...
封面图

蓝牙智能设备数据采集平台化方案 | 京东云技术团队

2023-08-02
阅读 4 分钟
5.9k
随着人们生活水平的提升,对健康的关注意识也随之提高;另外人口结构的老龄化,慢性病发病率升高,以及新冠疫情持久广泛的影响,进一步提高了大众对疾病早期预防、身体数据定期自测、慢性病持续关注等各个层面的重视程度;典型的,比如体温、血氧、血压、体重等高频、普遍使用的自测参数,在一些医疗器械和智能手机APP中...
封面图

从iOS App启动速度看如何为基础性能保驾护航 | 京东物流技术团队

2023-07-24
阅读 12 分钟
6k
启动是App给用户的第一印象,一款App的启动速度,不单单是用户体验的事情,往往还决定了它能否获取更多的用户。所以到了一定阶段App的启动优化是必须要做的事情。App启动基本分为以下两种
封面图

搜狗输入法双击输入框崩溃问题 | 京东云技术团队

2023-07-24
阅读 3 分钟
6.1k
每当到618、双11这样大促的时候,搜索作为整个App的核心功能,不仅担当着流量入口,还承载着用户感知到这个产品在导购场景中的服务与体验,所以保障搜索以便更好的助力618大卖。
封面图

Flutter状态管理新的实践 | 京东云技术团队

2023-06-20
阅读 4 分钟
6.8k
声明式UI其实并不是近几年的新技术,但是近几年声明式UI框架非常的火热。单说移动端,跨平台方案有:RN、Flutter。iOS原生有:SwiftUI。android原生有:compose。可以看到声明式UI是以后的前端发展趋势。而状态管理是声明式UI框架的重要组成部分。
封面图

iOS 单元测试之常用框架 OCMock 详解 | 京东云技术团队

2023-06-16
阅读 9 分钟
3.3k
测试驱动开发并不是一个很新鲜的概念了。在日常开发中,很多时候需要测试,但是这种输出是必须在点击一系列按钮之后才能在屏幕上显示出来的东西。测试的时候,往往是用模拟器一次一次的从头开始启动 app,然后定位到自己所在模块的程序,做一系列的点击操作,然后查看结果是否符合自己预期。
封面图

WWDC2023 Session系列:探索XCode15新特性 | 京东云技术团队

2023-06-15
阅读 7 分钟
2.8k
一、版本说明XCode 15 beta 发布于 2023 年 6月5日, 可支持 macOS 13.3 或以上版本, 你可以按需下载需要的平台。二、新增特性1.代码智能提示 (Code completion)创建新的文件在引用时的提示首先创建一个新的文件然后,在引用的地方,输入文件首字母会立即自动弹出补全提示。函数调用时列出所有可能的参数排列在没有提示...
封面图

基于 prefetch 的 H5 离线包方案 | 京东云技术团队

2023-06-06
阅读 5 分钟
3.7k
对于电商APP来讲,使用H5技术开发的页面占比很高。由于H5加载速度非常依赖网络环境,所以为了提高用户体验,针对H5加载速度的优化非常重要。离线包是最常用的优化技术,通过提前下载H5渲染需要的HTML/JS/CSS资源,加载时直接使用本地缓存资源避免额外的网络请求提高加载速度。本文主要是介绍团队在离线包技术方案上的探...

Flutter三棵树系列之BuildOwner | 京东云技术团队

2023-05-30
阅读 9 分钟
3.9k
Flutter开发中三棵树的重要性不言而喻,了解其原理有助于我们开发出性能更优的App,此文主要从源码角度介绍Element树的管理类BuildOwner。
封面图

Flutter调优--深入探究MediaQuery引起界面Rebuild的原因及解决办法 | 京东云技术团队

2023-05-29
阅读 5 分钟
3.5k
我们可以通过MediaQuery.of(context)方法获取到一些设备和系统的相关信息,比如状态栏的高度、当前是否是黑暗模式等等,使用起来相当方便,但是也要注意可能引起的页面rebuild问题。本文会介绍一个典型的例子,并深入源码来探讨引起rebuild的原因,最后介绍避免rebuild的几个办法。
封面图

Flutter热更新技术探索 | 京东云技术团队

2023-05-26
阅读 4 分钟
3.9k
APP发布到市场后,难免会遇到严重的BUG阻碍用户使用,因此有在不发布新版本APP的情况下使用热更新技术立即修复BUG需求。原生APP(例如:Android & IOS)的热更新需求已经比较成熟,但Flutter技术栈目前还缺少类似的技术方案,因此Flutter研发团队,也需要类似的热更新技术。
封面图

在Bamboo上怎么使用iOS的单元测试 | 京东云技术团队

2023-05-11
阅读 10 分钟
1.7k
作者:京东零售 吴滔本教程将使用北汽登录模块为例,一步一步和大家一起搭建单元测试用例,并在Bamboo上跑起来,最终测试结果和代码覆盖率会Bamboo上汇总。模块名称:BQLoginModule,是通过iBiu创建的一个模块工程一 建立单元测试BundleProductName: BQLoginTests二 测试代码编写1 配置文件同步如果我们要在测试代码使用...
封面图

iOS16新特性:灵动岛适配开发与到家业务场景结合的探索实践

2023-04-12
阅读 6 分钟
2.6k
灵动岛是苹果在iPhone 14 Pro和iPhone 14 Pro Max上首次提出的全新UI交互形式,创新性的让虚拟软件和硬件的交互变得更为流畅。当有来电、短信等通知时,灵动岛会变化形态,以便让用户能够更直观地接收到这些信息。
封面图

iOS代码覆盖率(一)-全量覆盖率自动化实践

2023-04-04
阅读 8 分钟
2.5k
这是一个统计基于 Swift & Objective-C 工程的代码覆盖率的自动化脚本。之所以做成 Pod ,是便于更好的复用,该 Pod 只包含了收集生成代码覆盖率的脚本。整体比较简单方便。
封面图

京东 App适配 iOS 暗黑模式业务实践

2020-03-17
阅读 6 分钟
6.8k
iOS 13 苹果推出了暗黑模式,暗黑模式在夜间可以更好的保护视力,也可以节省 App 电量消耗。但是 Apple 提供的暗黑模式只支持 iOS 13,为了给用户带来更好的体验,我们希望 iOS 13 以下的系统也可以支持暗黑模式。另外我们还给用户提供了自主选择的权利,可以在 App 内手动关闭暗黑模式,不跟随系统主题变化。

iOS内存管理布局及管理方案-理论篇

2020-01-06
阅读 4 分钟
4.3k
栈区(stack):线性结构,内存连续,系统自己管理内存,程序运行记录,每个线程,也就是每个执行序列各有一个(看crash log最容易理解),都是编译的时候能确定好的,还有一个特点就是这里面的数据可以不用指针,也不会丢。