Old Driver iOS Weekly #218 | 2022-09-26

Original link: https://github.com/SwiftOldDriver/iOS-Weekly/releases/tag/%23218

ios-weekly

The old driver iOS weekly report, only presents valuable information for you.

You can also contribute to this project. If you find valuable information, articles, tools, etc., you can submit it to us in Issues , and we will deal with it as soon as possible. Remember to write the reason for your recommendation. Suggestions and comments are also welcome to Issues .

article

? Centralized Resolution Management – Cloud Analysis

@JonyFang : This article mainly shares an optimization solution for CocoaPods cloudification within ByteDance. It converges and reuses a large number of repetitive iOS engineering pipeline construction tasks, and accelerates dependencies on the premise of ensuring the correctness of dependency resolutions. The management speed has been improved, and the R&D efficiency has been improved. At present, the cloud analysis service has completed the first stage of development and has been put into use, and has been used by several internal core production lines.

Content structure:

  1. background
  2. What is Cloud Dependency Analysis
  3. How to speed up resolution
    • Product library (full component index information)
    • Cache mechanism (sort version cache, Spec object cache, cache reuse)
    • Material pruning
    • Resolution Policy Compatible

? How to use UIViewController in SwiftUI

@Damien : In iOS development, SwiftUI and UIKit will coexist for a long time, no matter which framework you are using, sometimes you may need to call each other, luckily, Apple can easily bring UIKit code into SwiftUI for use, in this article In , the author will show you how to use UIViewController in SwiftUI. Interested readers may wish to read.

? viewDidLoad() in SwiftUI

@zvving : Coming from UIKit to the SwiftUI world, you might be confused: what is the SwiftUI equivalent of viewDidLoad() ?

Under the declarative view framework system, Apple does not provide the behavior details callback of load view . In most scenarios, the approximate method of viewDidLoad() can be simulated by onAppear() . This article introduces the simulation process in detail, and how to encapsulate it as a view modifier for easy use.

?Cloud Music iOS startup performance optimization “Wasteland Reclamation”

@Smalfly : The startup speed is the “facade” of the app, which affects the user’s first experience and is a very important experience optimization item. This article records the cold start optimization practice of cloud music apps after iOS 13.

Take the main() function as the dividing point, and carry out targeted optimization from the two stages of T1 and T2 respectively. The governance in the T1 stage mainly includes dynamic library management, +load method, useless code cleaning, and binary rearrangement; the governance in the T2 stage mainly includes high-frequency OC methods, runtime symbol traversal, network related, system interface, business impact, and so on.

After periodic special optimization of startup performance, the startup performance of Cloud Music App has been improved by 30%+.

? ? New species in the big terminal field – KUN

@CrazyCoderShi : Flutter’s dynamic attempts and construction have never stopped in the community. This year, various solutions have emerged one after another: AST parsing, JS Engine+, Lua VM, etc., each with its own merits; KUN is a set of exaggerated ideas produced by the Xianyu team based on Kraken. The dynamic solution of Flutter, which takes into account the dynamics of iOS & Android, aligns with the W3C standard to achieve compatibility with the Web side, and the overall solution is worthy of in-depth study and reference, and is not open source for the time being.

Audio and video

? ? Dynamic Island Animation explained

@ChengzhiHuang : Are you curious about how the animation of Smart Island is designed? The author reproduces the same dynamic effect by stacking two circles together, blurring first and then sharpening them to get a mask. .

Moyu Weekly

@Moyu Weekly #69 : The 69th issue of Moyu Weekly is here, let’s take a look at the summary of this issue:

  • Topic in this issue: Using iOS 16.1 Beta and Xcode 14.1 Beta, ready to land on Smart Island
  • Learning of the Week: Understanding Symbols
  • Recommended content: Recommended articles related to Swift and SwiftUI
  • Touch the fish: iOS 16 lock screen components and several interesting gadgets: emojimix, hexclock, can you speak well

Follow us

We are “Old Driver Technology Weekly”, a technical public account that continues to pursue high-quality iOS content. Welcome to pay attention.

Follow Youli, pay attention to [Old Driver Technology Weekly], reply to “2021”, and receive 2017/2018/2019/2020 internal reference

Also supports RSS feeds: https://github.com/SwiftOldDriver/iOS-Weekly/releases.atom .

illustrate

? means a tool is needed, ? means editor’s recommendation

Estimated reading time: ? Read quickly (1 – 10 mins); ? Moderate (10 – 20 mins); ? Slow (20+ mins)

This article is reprinted from: https://github.com/SwiftOldDriver/iOS-Weekly/releases/tag/%23218
This site is for inclusion only, and the copyright belongs to the original author.