You can also contribute to the project, if you find valuable information, articles, tools, etc., please send it to us in Issues, we will deal with it as soon as possible. Be sure to include a reason for your recommendation. Suggestions and comments are also welcome to Issues.

news

Apple Push Notification Service Update

@Looping: Apple recently announced that it will no longer support binary protocol based APNs after November 2020. It is recommended that we update our push service to HTTP/2 based API as soon as possible. For details about APNs, see the official document APNs Overview.

You Cannot Submit an Electron 6 (or 7) App to the Apple Store

@Zhang Jiafu: Developer David.dev reports that the App Store will reject an App made using Electron 6 or 7 because it uses a non-public framework, Including CAContext, CALayerHost, NSAccessibilityRemoteUIElement, NSNextStepFrame, NSThemeFrame and NSURLFileTypeMappings, etc. In its response to the authors, Apple also said that continued use of or concealment of non-public apis in future app submissions could result in the suspension of Apple developer accounts and the removal of all relevant apps from the App Store.

The article

🐢 Is it really difficult to make a high consistency, high performance Flutter dynamic rendering?

CrazyCoderShi: Recently the Idle Fish Flutter team is trying to use DinamicX’s DSL to render dynamic templates on the Flutter side by delivering DSL templates. Once the performance issues were resolved, a new challenge arose — rendering consistency. This article explains in detail, in the process of the realization of all kinds of pit disassembly, from the idea to the realization of the whole process, with you step by step to achieve.

🐕 🌟 Swift’s exploration of cloud integration on GAIA platform

@ lotus uncle: Server Side Swift has been developing with the development of Swift. Although some companies and teams have started to use Swift for development in proD environment, it is still relatively small in general. Compared with GO, Java and other traditional server-side languages, there is still a big gap. On the other hand, recently, the server-side technology has also made great progress. Faas(Function as a Service) has gradually come into people’s sight. On the basis of containerization, Faas further abstracts the back-end service into one Function after another. Faas makes it possible for front-end, mobile developers to complete the full stack of end-to-end logic to the cloud, which seems to be a new opportunity for Server-side Swift.

The author did such a thing, in Taobao Faas platform: GAIA, to achieve the adaptation of Swift language. In this way, you can quickly complete the landing of an App with a language full stack. The author shared a specific case and corresponding technical details. Although the article itself can not see the whole picture, it is still a mind-opener, which arouses people’s thinking. Those of you who are interested can read it.

🐕 Understanding the iOS 13 Scene Delegate

Anotheren: iOS 13 brings a new Scene Delegate for multi-window apps. In this article, I’ve gone over the key points of replacing traditional App delegates with Scene delegates, and it’s helpful to understand what the new Scene Delegate does. Whether or not you’ve migrated to Scene Delegate, this article is worth reading.

🐕 Write a command line tool based on SwiftSyntax to detect unused image resources in Xcode projects

Anotheren: Similar tools already have FengNiao of Meow god, but you can always learn new things by repeatedly building wheels. Swift for Path retrieval and SwiftSyntax for syntax analysis are analyzed and combined into a complete and usable tool.

🐕 Emoji in the eyes of iOS programmers

@zvving: 😂 Emoji is the world’s only universal language. 🤔 Have you thought about how it works?

From browsing Emoji to view the corresponding encoding, from ASCII to Unicode basic concepts, from Emoji Mosaic to the corresponding iOS character processing. This article is a clear guide to quickly understand the basic principles of Emoji coding.

🐕 5 Reasons Why Apps Fail & How To Avoid Them

Lao Donkey: A large part of our readers should be working on personal projects, such as creating an App in their spare time. At this time, people become PM, and try to promote their products in various ways, so that their products can be loved by more people.

In general terms, this article explains what the author thinks are the five most common reasons for product failure, as well as a few suggestions. Read the article and see if you can learn something from it.

🐕 Flutter performance analysis

Gobang: Performance optimization is a challenge all app developers must face. With the emergence of cross-platform frameworks like Flutter, the mobile development paradigm is also undergoing a shift. This paper describes how to analyze the performance of Flutter from two aspects of methodology and corresponding tool use. Some of the experience in this paper can play a large role in helping you quickly locate the problem.

tool

IShot screenshot tool

@Smilingly drinking arsenic: The screenshot function of The Mac is sufficient for most scenarios, but Apple has been slow to provide users with the pain point of long screenshots. I believe that many users have been recommended Xnip as a screenshot tool, but after all, it is paid. The appearance of iShot should make many Xnip users switch sides. IShot is a free excellent and comprehensive Mac tool for capturing area, window, long screenshot, delay screenshot and quick annotation. It is small and practical, and very suitable for users with multiple requirements for capturing screenshots.

Topology

Jimq: Topology is an open source drawing engine based on Canvas + typescript. It can be used to implement software architecture diagrams, microservice deployment diagrams, flow diagrams, activity diagrams, class diagrams, sequence diagrams, SCADA, etc. It can also implement any graphics library you want.

There is an official online drawing platform based on Topology, which can be edited online and saved to a cloud server with one click. It is free to use and the front-end is open source.

code

xcdiff – A tool which helps you diff xcodeproj files

Xiaofei86: an open source library for comparing XcodeProj files, which can output more understandable comparison results. As for the usage scenario, the author gives an example: “When we use tools to generate XCodeProj files, comparing xCodeProj files can enhance our confidence in the migration process”. Recommend it to students who need it.

🐕 🌟 LDNetDiagnoService

Lianhu: Developers who pay attention to user feedback may encounter such a powerless moment more or less: users report that they cannot use the App properly when they encounter network problems, but they lack relevant information to determine whether the problem is the App itself or the environment of the user’s device. LDNetDiagnoService is a network diagnosis library that tests specified domain names based on the principles of ping and traceroute and generates diagnosis reports. Combined with this library, running this diagnosis when a user’s network fails can help users and developers better locate the cause. Developers with similar concerns should give it a try.

UIFontComplete

@anotheren: This is a managed library that can safely call fonts, encapsulating the way fonts are called with enum instead of the unsafe method of strings. Supports both iOS and tvOS.

🐎 FSPagerView

FSPagerView is an elegant rotator gallery implemented by Swift that’s great for making banner views, product displays, welcome/guide pages, screen/view controller sliders, etc.

push

Senior driver Weekly team combined knowledge collection and SwiftGG Translation group included a reliable internal promotion position.

If you want to looking for a job, click here: www.yuque.com/iosalliance…

If you want to recruit people, click here: www.yuque.com/iosalliance…

Of course, you are also welcome to pay attention to our weekly report, we will update the editorial post at the bottom of each weekly report.

Pay attention to our

We have opened an official account, and every issue will be released on the official account (OldDriverWeekly), welcome to follow.

RSS feeds are also supported: github.com/SwiftOldDri… .

instructions

🚧 indicates the need to climb the wall, and 🌟 indicates the editor’s recommendation

Estimated reading time: 🐎 in a short time (1-10 mins); 🐕 medium (10-20 mins); 🐢 slow (20+ mins)