ios 8のwebkit frameworkでアプリ内ブラウザがどう変わる?

18
iOS 8のWebKit Frameworkで アプリ内ブラウザが どう変わる? Kosuke Ogawa(@koogawa)

Upload: kosuke-ogawa

Post on 18-Jan-2015

2.635 views

Category:

Documents


0 download

DESCRIPTION

2014.7.2 at iOS_LT

TRANSCRIPT

Page 1: iOS 8のWebKit Frameworkでアプリ内ブラウザがどう変わる?

iOS 8のWebKit Frameworkで アプリ内ブラウザが どう変わる?

Kosuke Ogawa(@koogawa)

Page 2: iOS 8のWebKit Frameworkでアプリ内ブラウザがどう変わる?

•小川航佑 Kosuke Ogawa • @koogawa • 趣味と仕事の両方でiOSアプリを開発

Page 3: iOS 8のWebKit Frameworkでアプリ内ブラウザがどう変わる?

WebKit Framework• iOS 8から追加されたフレームワーク

• いわゆる”アプリ内ブラウザ”

• 従来のUIWebViewより高機能

• WKWebViewというクラスを使う

• Interface Builderからは追加できない?

Page 4: iOS 8のWebKit Frameworkでアプリ内ブラウザがどう変わる?

主な機能UIWebViewとの違いを中心に

Page 5: iOS 8のWebKit Frameworkでアプリ内ブラウザがどう変わる?

読込みの進捗が取れるように

• (double)estimatedProgress プロパティ

• 0.0 ~ 1.0 の値が入っている

Page 6: iOS 8のWebKit Frameworkでアプリ内ブラウザがどう変わる?

閲覧履歴を扱えるように

• 前後の閲覧履歴を取得できる

• タイトルとURLが保存されている

• 特定の位置にジャンプできる

Page 7: iOS 8のWebKit Frameworkでアプリ内ブラウザがどう変わる?

スワイプで戻る・進むが可能に

• 設定でオン・オフの切り替えが可能

• デフォルトは オフ

Page 8: iOS 8のWebKit Frameworkでアプリ内ブラウザがどう変わる?

タイトル・URLが取得可能に

• title、URLプロパティで簡単に取得できる

• JavaScriptを使って取得しなくてもよくなった!

NSString* title = [webView stringByEvaluatingJavaScriptFromString:@"document.title"];×

Page 9: iOS 8のWebKit Frameworkでアプリ内ブラウザがどう変わる?

細かい設定が可能に

• WebViewの最小フォントサイズ

• JavaScriptが新ウィンドウを自動的に開くのを許可するか

• JavaScriptの実行を許可するか

Page 10: iOS 8のWebKit Frameworkでアプリ内ブラウザがどう変わる?

デリゲートも増えてます• ページを探し始めた

• ページの読み込みを開始した

• ページの読み込み失敗

• リダイレクトが発生した

• その他いろいろ

Page 11: iOS 8のWebKit Frameworkでアプリ内ブラウザがどう変わる?

その他いろいろ

• リロードの種類が増えた

• - reload

• - reloadFromOrigin

• JavaScriptエラーを受け取れるように

Page 12: iOS 8のWebKit Frameworkでアプリ内ブラウザがどう変わる?

パフォーマンス

Page 13: iOS 8のWebKit Frameworkでアプリ内ブラウザがどう変わる?

http://9to5mac.com/2014/06/03/ios-8-webkit-changes-finally-allow-all-apps-to-have-the-same-performance-as-safari/

Page 14: iOS 8のWebKit Frameworkでアプリ内ブラウザがどう変わる?

• iOS 8のWebKitでは高速なJavaScriptエンジン(Nitro)が使えるようになった

• (これまではSafariでしか使えなかった)

• Safariと同等のパフォーマンスが出るようになる

Page 15: iOS 8のWebKit Frameworkでアプリ内ブラウザがどう変わる?

デモ

Page 16: iOS 8のWebKit Frameworkでアプリ内ブラウザがどう変わる?

まとめ

• アプリ内ブラウザがより高機能・高性能になる

• ただし、移行作業が必要

• iOS 8以上でのみ動作

Page 17: iOS 8のWebKit Frameworkでアプリ内ブラウザがどう変わる?

ありがとう ございました

Page 18: iOS 8のWebKit Frameworkでアプリ内ブラウザがどう変わる?

参考資料

• WebKit Framework Referencehttps://developer.apple.com/library/prerelease/ios/documentation/Cocoa/Reference/WebKit/ObjC_classic/index.html