INNER CODE UNIT · Swift
handleLiveTextInteraction
duguyihou/react-native-turbo-image · ios/TurboImageView.swift:445
func handleLiveTextInteraction() {
#if !os(tvOS)
guard #available(iOS 16.0, *), ImageAnalyzer.isSupported, let image = lazyImageView.imageView.image else { return }
let interaction = ImageAnalysisInteraction()
lazyImageView.imageView.addInteraction(interaction)
liveTextTask?.cancel()
liveTextTask = Task { [weak self] in
guard let self else { return }
let analyzer = ImageAnalyzer()
let configuration = ImageAnalyzer.Configuration([
.text,.machineReadableCode,.visualLookUp
])
let analysis = try? await analyzer.analyze(image, configuration: configuration)
if let analysis {
// Ensure imageView is still alive
await MainActor.run { [weak self] in