首页
学习
活动
专区
工具
TVP
发布

QQ音乐技术团队的专栏

专栏成员
149
文章
499700
阅读量
302
订阅数
iOS类簇代码保护引发的Crash原因排查全记录
全民 K 歌在一个业务需求中,接入了一个第三方的 SDK,在接入 SDK 后启动 APP 就出现 crash,在后续的定位排查中,发现这是由一段关于对系统类簇添加保护代码引发的。本文记录了 crash 的原因排查过程及需要关注的一些细节。
QQ音乐技术团队
2023-12-23
2690
酷我音乐iOS小组件适配开发实践
本文来自TME腾讯音乐娱乐-酷我音乐团队,迈腾大队长投稿,本文仅作为个人学习记录使用,也欢迎在许可协议范围内转载或使用,请尊重版权并且保留原文链接,谢谢您的理解合作. 如果您觉得本文章对您能有帮助,您可以使用关注此公众号,感谢支持.
QQ音乐技术团队
2023-12-15
1K3
酷我音乐iOS小组件适配开发实践
本文来自TME腾讯音乐娱乐-酷我音乐团队,迈腾大队长投稿,本文仅作为个人学习记录使用,也欢迎在许可协议范围内转载或使用,请尊重版权并且保留原文链接,谢谢您的理解合作. 如果您觉得本文章对您能有帮助,您可以使用关注此公众号,感谢支持.
QQ音乐技术团队
2023-12-15
7780
【iOS】一段防护代码引发的内存风暴
收到反馈后,开发同学在TME的火眼APM平台上根据用户id进行搜索判断,是否有共性的Crash堆栈。将所用的用户都检索了后发现,并没有相关的堆栈信息。
QQ音乐技术团队
2023-10-23
6920
iOS点九图NinePatch解析
项目有个web页面卡片类型UI,卡片有不同宽高大小。现在想在卡片上增加一个封面边框,设计给出的切图
QQ音乐技术团队
2023-09-17
9020
iOS 客户端动图优化实践
GIF 和 Animated WebP 是互联网上最主流的动图格式, 但是在 iOS 开发中, 原生的 UIImage 并不直接支持 GIF 以及 Animated WebP 的展示, 因此有了各种优秀的第三方开源方案, 例如 SDWebImage 以及 YYImage 等. 这篇文章将以 QQ 音乐 iOS 端优化动图的实践为基础, 来介绍不同方案的思路以及优劣, 并给出优化的方案. 1. 端内动图展示的问题以及优化结果 长期以来, 部分机型浏览 Q 音的图文流时很容易闪退, 端内其他业务也存在不少动图相
QQ音乐技术团队
2023-05-12
5.3K3
大前端开发中的路由管理之五:Flutter篇
        前面大家了解了Web和Native端的路由管理,这篇文章出场的是大前端领域备受开发者喜欢的新秀Flutter。         Flutter作为一款跨平台UI框架,借鉴了React(Web开发框架)的响应式的UI框架设计思想等。在Flutter中,一切皆是Widget(组件),其中StatefulWidget(有状态的组件)和React中的组件类似,可以通过数据变化去手动更新视图,Flutter路由管理实现的核心组件Navigator就是这样的一个StatefulWidget。 1、认
QQ音乐技术团队
2021-11-18
2.2K0
大前端开发中的路由管理之四:iOS篇
1、iOS上的页面展示和逻辑 1.1 iOS的MVC设计模式         在介绍iOS的页面展示之前,我们需要先知道iOS应用的运行逻辑和设计模式。MVC即Model,View,Controller(模型,视图,控制器)。 View上展示的东西,由Model来定义 View上展示的逻辑,由Controller来控制 Controller同样负责初始化Model,和传递Model的信息给View         用户在View层中所进行的创建或修改数据的操作,通过Controller对象传达出去,最
QQ音乐技术团队
2021-11-15
1.9K0
大前端开发中的路由管理之三:Android篇
        我们通常认为Android开发中的路由管理主要分为两部分,Android原生页面栈和混合开发页面栈。在native原生页面中,使用最多的是四大组件之一的Activity和依托于其的Fragment。在混合开发页面中,通常又分为Activity-H5(WebView),Activity-Weex/React-Native,和Activity-Flutter这几种跨平台的页面交互方式。 1、原生之Activity的页面跳转与管理 1.1 从Activity启动模式入手         在An
QQ音乐技术团队
2021-11-10
3.2K0
大前端开发中的路由管理之一:开篇
一、前言  从早期的传统(Web)前端到当下的大前端,无论是iOS端还是Android端,路由管理这个概念,一直贯穿在应用(APP)开发的过程里。了解路由管理的形成与发展,可以帮助我们理解应用设计与开发,透析其中的技术原理,对于提升个人开发能力也是大有裨益。         QQ音乐技术团队(下称“团队”)汇聚了Web、Android、iOS、Flutter等平台的众多优秀人才,更在如MOO音乐、Q音探歌等项目上,进行了非常多的前沿技术实践,对于路由管理这个技术话题也是积累良多。         围绕页
QQ音乐技术团队
2021-11-05
1.1K0
大前端开发中的“树” (下)
本系列文章共分为上、下两篇,介绍 Web、Android、iOS、Flutter 这些前终端平台下,与 “树” 及视图系统有关的技术话题,并尝试分析它们之间的异同点;方便从事大前端开发的同学对各平台的技术特性有更广泛的了解。四、iOS 中的树 4.1 视图 iOS 中的视图就是在屏幕上显示的一个矩形块(比如图片,文字或者视频等),它能够拦截触摸手势等用户输入。视图在层级关系中可以互相嵌套,一个视图可以管理它的所有子视图的位置。 在 iOS 当中,所有的视图都从一个叫做 UIView 的基类派生而来,U
QQ音乐技术团队
2021-10-08
1.9K0
MOO音乐的Flutter实战总结之内存治理(下)
MOO 音乐是 TME 旗下的新锐音乐服务,其团队是公司内最早实践 Flutter 的先行者之一。本系列文章将提炼 MOO APP 开发中遇到的情况,就 Flutter 内存占用治理方面,分享日常开发的一些基本认知、注意要点、排查方法和优化方案。内存治理篇文章共分上、中、下三篇,本篇为下篇。 五、内存优化策略 1. 图片内存优化 各种导致内存增长的资源中,图片引起的问题是尤为明显和常见的,一张高清图动辄几百K,MOO 音乐很多列表都使用 GIF 动图,大小可以达几MB乃至十几MB,图片所占内存跟图片大小有
QQ音乐技术团队
2021-08-23
1.6K0
MOO音乐的Flutter实战总结之内存治理(中)
MOO 音乐是 TME 旗下的新锐音乐服务,其团队是公司内最早实践 Flutter 的先行者之一。本系列文章将提炼 MOO APP 开发中遇到的情况,就 Flutter 内存占用治理方面,分享日常开发的一些基本认知、注意要点、排查方法和优化方案。内存治理篇文章共分上、中、下三篇,本篇为中篇。  四、内存泄漏的排查实战 为了便于我们定位具体问题代码,Android Studio 或 VS Code 插件帮我们包装了相关内存工具,这些工具都基于 debug 模式下 Dart VM service 暴露的接口开
QQ音乐技术团队
2021-08-23
9100
MOO音乐的Flutter实战总结之内存治理(上)
MOO 音乐是 TME 旗下的新锐音乐服务,其团队是公司内最早实践 Flutter 的先行者之一。本系列文章将提炼 MOO APP 开发中遇到的情况,就 Flutter 内存占用治理方面,分享日常开发的一些基本认知、注意要点、排查方法和优化方案。内存治理篇文章共分上、中、下三篇,本篇为上篇。 一、前言 内存问题几乎是所有软件开发都会碰到的标配问题。追求极致的内存瘦身,可以说是作为一名开发者的本能。MOO 音乐整体采用 Flutter 混合开发架构,在享受到了 Flutter 带来的卓越的跨平台开发效率的
QQ音乐技术团队
2021-08-19
1.7K0
iOS Crash防护你看这个就够了-下篇
0x1: Previously 上篇 中讲到了Crash处理流程分为四个环节,也分析了Crash防护的方法,本章来讲下其余三个环节:Crash的拦截、Crash的上报、Crash的后续。 0x2: Crash的拦截 所有的未被防护住的Crash最终会走到这一步,在这里我们必须要保证拦截的 全面性、稳定性尽可能多的拦截到所有类型的异常,同时拦截逻辑本身不能产生异常。那么我们需要通过以下几个方面去考虑。 I: Crash类型 和多数操作系统一样,iOS的异常也基本分为 用户层 系统底层 信号 这三个类别,
QQ音乐技术团队
2021-06-15
1.5K0
iOS Crash防护你看这个就够了-上篇
0x1 为什么要做Crash防护 在产品开发过程中Crash率是一个很重要的指标,也是一个团队中几乎所有的部门都应该关注或者去参与提升的一个指标,他不仅代表着整个产品的质量,也是一个团队整体技术能力的体现。更低的Crash率不但能让产品获得更好的用户口碑,在整个流程中也能让团队成员获得更多的成长,加深对iOS系统底层的理解,为今后的开发带了更大的帮助。 0x2 为什么要写这篇文章 起因也是因为自己的项目踩了FB的SDK的坑:2020.7.10,FB后台下发数据错误,导致大量使用FB SDK的App发生
QQ音乐技术团队
2021-06-10
9310
MOO 音乐中的Flutter 模糊方案分析
前言 对图片进行模糊化处理,是非常常见的开发场景。在MOO音乐App的模糊优化过程中,我们总结了一些Flutter中模糊使用的一些经验。在确定模糊方案的过程中我们遇到两个选择点,模糊逻辑实现和模糊算法的选择,针对这两个选择点我们设计了四个方案用作对比。 方案一: Flutter BackdropFilter & GaussianBlur 方案二: Dart StackBlur & StackBlur 方案三: Golang GaussianBlur & GaussianBlur 方案四: Golang H
QQ音乐技术团队
2021-02-25
1.2K0
Pigeon- Flutter多端接口一致性以及规范化管理实践
导语: 跨端开发中,经常会遇到插件,接口管理上的问题。了解完本文,你将会了解Flutter是如何通过Pigeon去解决plugin中多端开发难以管理的问题。 demo源码地址 https://github.com/linpenghui958/flutterPigeonDemo warning:目前Pigeon还是prerelease版本,所以可能会有breaking change。下文以0.1.7版本为例。 为何需要Pigeon 在hybird开发中,前端需要native能力,需要native双端开发
QQ音乐技术团队
2020-10-26
3.7K0
全民K歌推流直播Web实践
背景 ---- 2020年受到疫情的影响,大众减少了线下娱乐,将更多的时间投入到了线上活动,直播行业迎来了一个小爆发,主播注册数量与线上观众不断增长。同时,在线直播演唱作为一种全新的演出模式,受到广大网友的好评,4月以来TME承办了近20场明星在线演唱会。 随着站外直播场景业务需求逐步增多,K歌直播旧的业务代码无法满足不断增长的产品功能需求和用户体验需求。在此背景下,Web侧急需为推流直播业务提供更加可靠的技术支持。 HLS和HTTP FLV ---- 目前K歌Web使用的直播流格式主要以HLS直播流为主
QQ音乐技术团队
2020-07-07
5.5K0
Flutter 核心原理与混合开发模式
在 「Fan 直播」的 Flutter 混合开发实践中,我们总结了一些 Flutter 混合开发的经验。本文第一篇章将从 Flutter 原理出发,详细介绍 Flutter 的绘制原理,借由此在第二章来对比三种跨端方案;之后再进入第三篇章 Flutter 混合开发模式的讲解,主要是四种不同的 Flutter 混合模式的原理分析;最后的第四篇章,简单分享一下混合工程的工程化探索。 “唯有深入,方能浅出”,对于一门技术,只有了解的深入,才能用最浅显、通俗的话语描述出。在此之前,我写过一些 Flutter 的文
QQ音乐技术团队
2020-07-06
2.3K0
点击加载更多
社区活动
【纪录片】中国数据库前世今生
穿越半个世纪,探寻中国数据库50年的发展历程
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档