2017-01-09 6 views
4

나는 SFSafariViewController을 사용하는 주요 adavantage 무엇인지에 대한 올바른 이해를 못하고 있어요?SFSafariViewController를 사용할 때의 주요 이점은 무엇입니까? 우리 둘의 차이점은 무엇입니까 <code>[[UIApplication sharedApplication] openUrl: strUrl];</code></p> <p>를 사용하는 경우

+0

당신은 작업을 처리 할 SFSafariViewController에 대리자를 추가 할 수 있습니다. 또한 인터넷에서 데이터를 보면서 사용자가 응용 프로그램에 머무르는 주요 이점이 있다고 생각합니다. –

+0

[UIApplication openURL :]의 경우 Safari가 시작되고 앱이 더 이상 포 그라운드가 아니며 일반적으로 앱이 실행되지 않을 수 있습니다. 반대로, SFSafariViewController는 앱의 일부이며 UIViewController 또는 SFSafariViewControllerDelegate 메소드로 제어 할 수 있습니다. 어느 것을 사용할지는 당신이 달성하기를 원하는 것에 달려 있습니다. 또한 WKWebView를 사용하면 콘텐츠 및 탐색 기능을보다 강력하게 제어 할 수 있지만 콘텐츠 차단과 같은 Safari의 일부 기능이 부족합니다. – Baglan

+0

만약 당신이'SFSafariViewController'를 사용한다면, 당신의 어플리케이션은 포 그라운드에서 활성 어플리케이션으로 남을 것입니다; _Safari_ 앱을 열면 앱이 비활성 상태가되어 백그라운드로 이동합니다. – holex

답변

7

SFSafariViewController를 사용하면 사용자가 앱을 떠나지 않고 Safari에서 웹 콘텐츠를 볼 때 얻을 수있는 거의 모든 이점을 사용할 수 있습니다.

대부분의 앱은 일반적인 웹보기 환경을 제공하면됩니다. 사파리 뷰 컨트롤러의 완벽한 시나리오입니다.

SFSafariViewController가 출시되기 전에는 브라우저가 다른 응용 프로그램간에 일관성이 없었기 때문에 사용자를 혼란스럽게 할 수 있습니다. 일부 인터페이스는로드되는 페이지의 양을 나타내는 진행률 막대와 같이 사용자가 기대하는 것이 부족할 수도 있습니다.

또한 Safari의 모든 기능에 액세스 할 수있는 권한이 없습니다. 여기에는 리더보기, 자동 완성 기능을위한 iCloud 키 체인 등이 포함됩니다. iOS 9 이전에 이러한 기능을 사용하려면 Safari에서 콘텐츠를 열어 사용자가 앱을 완전히 떠나게해야했습니다. SFSafariViewController 클래스는 이러한 모든 문제를 해결합니다.

https://code.tutsplus.com/tutorials/ios-9-getting-started-with-sfsafariviewcontroller--cms-24260