小编Mic*_*sen的帖子

Swift:调试模式在试飞时不起作用

在我的项目中,我的代码被 DEBUG 模式标记包围,#if DEBUG如下所示:

#if DEBUG
    let goToMainScreensGesture = UITapGestureRecognizer(target: self, action: #selector(navigateToMainStoryboard(_:)))
    goToMainScreensGesture.delegate = self
    goToMainScreensGesture.numberOfTapsRequired = 2
    logoLargeImageView.isUserInteractionEnabled = true
    logoLargeImageView.addGestureRecognizer(goToMainScreensGesture)
#endif
Run Code Online (Sandbox Code Playgroud)

但这不起作用,是否有另一种选择来添加我自己的调试模式?

在 TestFlight 上,Apple 会自动将调试模式应用程序移至发布模式。我需要将自己的全局调试模式添加到应用程序中,调试功能才能正常工作。

如何正确执行此操作的最佳实践是什么?

xcode swift

5
推荐指数
1
解决办法
1514
查看次数

Swift:使用 NSLock 或并发队列的安全线程

最好的办法是什么Safe Thread

使用NSLock

class Observable<T> {

    typealias Observer = (_ observable: Observable<T>, T) -> Void
    
    private var observers: [Observer]
    private let lock = NSLock()
    private var _value: T

    var value: T {
        get {
            lock.lock()
            let value = _value
            lock.unlock()
            return value
        }
        set {
            lock.lock()
            _value = newValue
            lock.unlock()
        }
    }

    
    init(_ value: T) {
        self._value = value
        observers = []
    }

    func observe(observer: @escaping Observer) {
        self.observers.append((observer))
    }

    private func notifyObservers(_ value: T) { …
Run Code Online (Sandbox Code Playgroud)

multithreading grand-central-dispatch ios swift

2
推荐指数
1
解决办法
2527
查看次数