Cộng đồng Swift Việt Nam
12

Bản tin Swift Việt Nam #12

Cuộc chiến giữa Epic Games và Apple có vẻ vẫn chưa đến hồi kết khi Apple doạ sẽ cắt tài khoản Apple Developer của Epic Games, còn Epic Games thì tiếp tục kiện Apple ra toà và doạ cắt hỗ trợ iOS khỏi Unreal Engine. MicrosoftFacebook cũng ăn hôi nhẩy vào bênh vực Epic Games một phần vì Apple cũng từ chối cho MicrosoftFacebook phát hành app games của riêng họ trên Apple Store. Apple tuần vừa rồi cũng dính thêm một phốt khác là việc từ chối cho Automattic cập nhật app Wordpress của họ và bắt họ phải cung cấp In-App-Purchase, sau đó Apple đã phải xin lỗi và cho phép Automattic cập nhật app Wordpress mà không cần IAP. Nhận định của mình là dù ai thắng thua trong cuộc chiến thương mại này, tương lai của App Store và In App Purchase sẽ có rất nhiều sự thay đổi.

Swift:

Thử nghiệm App Clip trên Testflight

12

Apple đã cập nhật Testflight và cho phép chúng ta có thể thử nghiệm tính năng App Clip. Bản cập nhật này cũng trình làng một icon mới cho app Testflight. Thông tin thêm về bản cập nhật này tại đây.

Tìm hiểu OptionSet

OptionSet là một Protocol khá thú vị, đặc biệt hữu ích khi chúng ta muốn định nghĩa configurations cho một API nào đó vì các configuration có thể kết hợp với nhau. Bạn có thể tham khảo một bài viết thảo luận về OptionSet tại đây.

Bài viết:

Kiểm thử Deeplink tự động bằng UI Testing

Deep-Linking là một thành phần không thể hiệu trong các mobile app hiện nay. Tuy nhiên việc kiểm thử Deeplink không phải là chuyện dễ dàng và thường phải làm một cách thủ công. Từ iOS 13, Apple đã hỗ trợ và mở rộng iOS Simulator rất nhiều để giúp cho việc kiểm thử Deeplink dễ dàng hơn. Bạn có thể tham khảo bài viết này để xem cách kiểm thử Deeplink một cách tự động nhé.

Tips phát triển Widget cho iOS 14

12

Widgets là một feature mới xuất hiện trong iOS 14. Với việc các lập trình viện hiện đang rất nóng lòng adopt Widget cho app của mình, mình xin giới thiệu một bài viết có liệt kê các tips và tricks hay trong việc lập trình widgets, mời các bạn tham khảo nhé.

Mã nguồn:

Thư viện phát hiện memory leak

12

Mặc dù Swift đã hỗ trợ việc quản lý bộ nhớ tự động rất tốt, chúng ta vẫn cần phải cẩn trọng khi viết code để tránh bị memory leak, đặc biệt là tránh việc có retain cycles.

Bạn @Đào Duy Quang có thảo luận về vấn đề này trong bài blog gần đây.

Bạn Quang cũng có phát hành một thư viện mã nguồn mở để kiểm tra Memory Leak tại đây.

AltStore - Sideload apps mà không cần Jailbreak

12

AltStore là một thư viện app dành cho các máy chạy iOS mà không cần phải Jailbreak. AltStore sử dụng Certificate và Provisioning Profiles của chính bạn để resign các app (từ file ipa) và sideload nó lên máy iOS của bạn. Bạn có thể tham khảo mã nguồn của AltStore tại đây.

Arial - Screensaver cho Mac

12

Nếu bạn đã phải trầm trồ khi xem các ảnh screensaver trên Apple TV thì bạn có thể sử dụng Aerial để có thể xem các screensaver tương tự trên máy Mac của mình.

Thư viện hiệu ứng chuyển động SwiftUI Animation

12

Một lợi thế của SwiftUI so với UIKit đó là việc tạo hiệu ứng chuyển động rất dễ dàng. Bạn có thể tham khảo repo SwiftUI-Animations để có cảm hứng cũng như tham khảo cách tạo hiệu ứng chuyển động tương tự trong các app phổ biến nhé.

Tool:

Sử dụng Xcode Search như một Todo list

12

Tip này khá hay. Khi bạn tìm kiếm trong Xcode, bạn có thể sử dụng danh sách trả về như một todo list như ở đây.

Bạn tốn bao nhiêu thời gian chờ Xcode chạy code?

12

Sử dụng tool này, bạn có thể đo được thời gian bạn chờ Xcode build code của bạn. Không có gì thiết thực lắm nhưng cũng khá thú vị.

Hài hước:

Không biết thông tin này đáng cười hay đáng khóc 😂, nhưng Adobe vừa làm mất hoàn toàn ảnh của người dùng trong bản cập nhật mới của Lightroom.

Lời kết:

Nếu các bạn có các bài viết liên quan đến Swift, WWDC, lập trình iOS và các platform khác của Apple muốn chia sẻ với cộng động thì các bạn tham gia nhóm thảo luận Swift Việt Nam để thảo luận thêm nhé.

Các bạn cũng nhớ theo dõi trang Facebook Swift Việt Nam để được cập nhật các thông tin mới nhất về Swift và cộng đồng lập trình viên Swift Việt Nam nhé.

Tagged with: