[ios] SafariServices를 이용한 웹 페이지 내 검색 기능

SafariServices 프레임워크는 iOS 앱 내에서 웹 페이지를 표시하고 상호작용하는 데 사용됩니다. 사용자가 웹 페이지 내에서 특정 키워드를 검색할 수 있는 검색 기능을 구현하려면 다음과 같은 단계를 따르면 됩니다.

1. SFSafariViewController 통합

import SafariServices

let safariViewController = SFSafariViewController(url: URL(string: "https://example.com")!)
present(safariViewController, animated: true, completion: nil)

SFSafariViewController를 사용하여 웹 페이지를 표시합니다.

2. 사용자가 검색할 키워드 입력받기

SFSafariViewController에서는 기본적으로 웹 페이지에서 검색을 제공하지 않습니다. 따라서 웹 페이지 내 검색을 구현하려면 앱 내에서 사용자가 웹 페이지에서 검색할 키워드를 입력할 수 있도록 UI를 표시해야 합니다.

3. JavaScript를 이용한 웹 페이지 검색 기능 구현

사용자가 검색 키워드를 입력하면, 해당 키워드를 사용하여 JavaScript를 이용하여 웹 페이지 내에서 검색하고 결과를 표시합니다.

let script = "document.body.innerHTML = document.body.innerHTML.replace(/keyword/g, '<span style=\"background-color: yellow;\">keyword</span>')"
safariViewController.executeJavaScript(script, completionHandler: nil)

요약

SafariServices를 이용하여 iOS 앱에서 웹 페이지를 표시하고, 사용자가 검색 기능을 이용할 수 있도록 JavaScript를 활용하여 웹 페이지 내 검색 기능을 구현할 수 있습니다.

더 자세한 내용은 [SafariServices Apple Developer Documentation](https://developer.apple.com/documentation/safariservices)를 참고하십시오.