EasySwift iOS🍏
3.01K subscribers
272 photos
8 videos
412 links
Все самое интересное в мире iOS разработки 🧑🏻‍💻

Предложить статью или новость: @EasySwiftBot

По всем вопросам обращаться к @itereznikov
Download Telegram
Feature flags in Swift

🚩 Feature flags в Swift позволяют включать и отключать определенные функциональности. В статье автор приводит в пример в зависимости от конфигурации сборки, таких как Debug, TestFlight и App Store.

По умолчанию в Xcode есть две конфигурации: Debug и Release. Рекомендуется создавать дубликаты для App Store и TestFlight для управления функциональностью.

🔥 Создание перечисления Distribution и структуры FeatureFlags позволяет управлять доступом к функциям в зависимости от текущей конфигурации сборки.

ℹ️ Такой механизм следует рассматривать как временный инструмент и удалять флаги, когда функция готова. Рассмотрите возможность удаленной настройки для мгновенного включения или отключения функций. Крайне полезный инструмент.

public struct FeatureFlags: Sendable, Decodable {
public let requirePaywall: Bool
public let requireOnboarding: Bool
public let featureX: Bool

public init(distribution: Distribution) {
switch distribution {
case .debug:
self.requirePaywall = true
self.requireOnboarding = true
self.featureX = true
case .appstore:
self.requirePaywall = true
self.requireOnboarding = true
self.featureX = false
case .testflight:
self.requirePaywall = false
self.requireOnboarding = true
self.featureX = true
}
}
}
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1