iOS 6가 설치된 기기에서 웹 페이지를 방문했을 때 해당 페이지 관련 native iOS 앱의 설치를 권하거나 이미 해당 앱이 설치되어 있다면 관련 앱을 클릭으로 바로 열어줄 수 있는 배너를 스크린 상단에 슬며시 띄워 주는 기능이 추가되었다.
소위 이 Smart App Banner를 띄우려면 페이지에다 다음과 같은 meta tag을 추가해주면 된다.

<meta name="apple-itunes-app" content="app-id=123456789, app-argument=x-sfp:///visit/seal-rocks">

content attribute에 있는 App-ID는 iTunes Link Maker를 통해서 얻을 수 있다. 그리고 app-argument(optional)는 방문한 페이지와 native App 간의 정보 전달 목적으로 사용되는데, 실제 URL 형식을 가지며 scheme이나 주소는 개발자가 아무것이나 적당한 것으로 지정해 줄 수 있다.

아래는 이렇게 해서 열리는 앱에서 delegate처럼 자동 실행되는 method로 openURL에는 app-argument에서 지정했던 URL을 받게 되면서 이곳의 정보를 확인해서 방문 페이지에 맞는 적절한 추가 조치를 취해줄 수 있겠다.

- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation;

WWDC 2012 Session 601 Optimizing Web Content in UIWebViews and Websites on iOS에서 소개된 내용으로, 단순한 native 앱의 광고기능 말고도 웹 앱과 이를 보완하는 native 앱 간의 상호 소통에 따른 풍부한 사용자 경험을 제공하는데 하나의 좋은 수단이 될 수도 있겠다.

정식 Safari 6가 어서 빨리 배포되길 기대하며.

Johan Brook 씨가 blog에 올린 글에 의하면 다음 버전의 iOS에선 새로운 CSS property를 써서 완벽한 기본 iOS의 관성 스크롤링 동작을 구현할 수 있게 되었다고 한다. 그것도 손가락 하나만으로 스크롤링이 가능해졌다.

div {
  overflow: scroll;
  -webkit-overflow-scrolling: touch;
}

그동안 Web Apps를 개발할 때 native iOS apps에서 보여주는 관성 스크롤링 동작을 구현하기 위해 몇몇 JavaScript 라이브러리를 사용해야 했는데, 아무래도 부족한 면이 없지 않았다.

이미 이전 iOS 5 Beta에선 position:fixedoverflow:scroll 등 아쉬웠던 여러 웹 기술을 지원하기 시작했으며, 여기에다 관성 스크롤링까지 지원하면서 native Apps 못지않은 Web Apps를 구현하는데 부딪히게 되는 장벽이 훨씬 낮아진 느낌이다.