Handoff from Safari
-
Upload
yuichi-yoshida -
Category
Technology
-
view
508 -
download
0
description
Transcript of Handoff from Safari
![Page 1: Handoff from Safari](https://reader033.fdocuments.net/reader033/viewer/2022061204/547e8933b37959822b8b546c/html5/thumbnails/1.jpg)
Fly to iOS
UIKit
Yuichi YoshidaChief engineer, DENSO IT Laboratory, Inc.
#yidev20140927
@sonson_twit
© 2014 Yuichi Yoshida, all rights reserved. Redistribution or public display not permitted without written permission from Yuichi Yoshida.
Handoff from Safari
![Page 2: Handoff from Safari](https://reader033.fdocuments.net/reader033/viewer/2022061204/547e8933b37959822b8b546c/html5/thumbnails/2.jpg)
自己紹介2tchの中の人
• iOS好きです • 2tch(2ちゃんねるビューア) • iOS SDK Hacksなど
• 研究 • コンピュータビジョン • 機械学習
• 研究・開発 • 画像検索サービス • 車向けのサービスやハードウェア
![Page 3: Handoff from Safari](https://reader033.fdocuments.net/reader033/viewer/2022061204/547e8933b37959822b8b546c/html5/thumbnails/3.jpg)
自己紹介2tchの中の人
• 6年・・・・ • 41,200行 • 463ファイル • 3472コミット
![Page 4: Handoff from Safari](https://reader033.fdocuments.net/reader033/viewer/2022061204/547e8933b37959822b8b546c/html5/thumbnails/4.jpg)
What is Handoff?継続って訳すのやめて欲しい
![Page 5: Handoff from Safari](https://reader033.fdocuments.net/reader033/viewer/2022061204/547e8933b37959822b8b546c/html5/thumbnails/5.jpg)
DemoSafariで試す
![Page 6: Handoff from Safari](https://reader033.fdocuments.net/reader033/viewer/2022061204/547e8933b37959822b8b546c/html5/thumbnails/6.jpg)
Handoffの種類
• Safariを呼ぶ • URLを渡すだけ
• ネイティブアプリケーション • 受信側にコードが必要 • インストールされていれば自動起動する
• Safariからネイティブアプリケーションを呼ぶ • 署名した対応アプリ一覧JSONが必要
![Page 7: Handoff from Safari](https://reader033.fdocuments.net/reader033/viewer/2022061204/547e8933b37959822b8b546c/html5/thumbnails/7.jpg)
![Page 8: Handoff from Safari](https://reader033.fdocuments.net/reader033/viewer/2022061204/547e8933b37959822b8b546c/html5/thumbnails/8.jpg)
![Page 9: Handoff from Safari](https://reader033.fdocuments.net/reader033/viewer/2022061204/547e8933b37959822b8b546c/html5/thumbnails/9.jpg)
準備• 対応ハードウェアを買う
• MacBook Air (Mid 2011以降) • MacBook Pro (Mid 2012以降) • Retina MacBook Pro (全機種) • iMac (Late 2012以降) • Mac Mini (Mid 2011以降) • Mac Pro (Late 2013以降)
• http://www.ipadmod.netより • iOS
• iPhone 5以降、iPad(第4世代)、iPad Air、iPad mini、iPad
mini Retinaディスプレイモデル、iPod touch(第5世代)
![Page 10: Handoff from Safari](https://reader033.fdocuments.net/reader033/viewer/2022061204/547e8933b37959822b8b546c/html5/thumbnails/10.jpg)
準備
• iCloudに登録する • Bluetoothをオンにする • Wi-Fiをオンにする
![Page 11: Handoff from Safari](https://reader033.fdocuments.net/reader033/viewer/2022061204/547e8933b37959822b8b546c/html5/thumbnails/11.jpg)
準備
• iCloudに登録する • Bluetoothをオンにする • Wi-Fiをオンにする
![Page 12: Handoff from Safari](https://reader033.fdocuments.net/reader033/viewer/2022061204/547e8933b37959822b8b546c/html5/thumbnails/12.jpg)
SafariからのHandoff
• ブラウザからHandoff経由でアプリを起動する • Webページ閲覧中にiOSデバイスのアプリを起動
![Page 13: Handoff from Safari](https://reader033.fdocuments.net/reader033/viewer/2022061204/547e8933b37959822b8b546c/html5/thumbnails/13.jpg)
手順いろいろ
• iOS側のentitlementにサーバのドメインを追加 • JSONを作る • JSONに署名する
• iOSの持つリストに入ってる認証局の証明書が必要 • 実はApple自身が認証局になってる • なのでAppleの開発者の署名でおk
• httpsで通信できるサーバにJSONを置く • ファイル名 apple-app-site-association • ルートに置く必要がある
![Page 14: Handoff from Safari](https://reader033.fdocuments.net/reader033/viewer/2022061204/547e8933b37959822b8b546c/html5/thumbnails/14.jpg)
Associated Domainsの設定
• Xcode • Associated Domains
![Page 15: Handoff from Safari](https://reader033.fdocuments.net/reader033/viewer/2022061204/547e8933b37959822b8b546c/html5/thumbnails/15.jpg)
さらに手順サーバサイドと署名
• キーチェーンから"iPhone Distribution: <Your name>
(XXXXXXXXXX)" を dist.p12 として書き出す. • 秘密鍵,証明書を作成 • echo '{"activitycontinuation":{"apps":
["XXXXXXXXXX.com.example.myApp"]}}' > json.txt • 秘密鍵と証明書で署名 • ファイル名をapple-app-site-associationにする • ドメインのルートにコピーする
![Page 16: Handoff from Safari](https://reader033.fdocuments.net/reader033/viewer/2022061204/547e8933b37959822b8b546c/html5/thumbnails/16.jpg)
認証局
https
署名
同じ証明書じゃなくておk
JSON ファイル
サーバ:example.com
associated domains example.com
![Page 17: Handoff from Safari](https://reader033.fdocuments.net/reader033/viewer/2022061204/547e8933b37959822b8b546c/html5/thumbnails/17.jpg)
DemoHandoff from Safari
![Page 18: Handoff from Safari](https://reader033.fdocuments.net/reader033/viewer/2022061204/547e8933b37959822b8b546c/html5/thumbnails/18.jpg)
まとめYou get to try it.
• Handoffについて • 使えるデバイスは限定される • SafariからiOSのアプリケーションを起動するHandoff
![Page 19: Handoff from Safari](https://reader033.fdocuments.net/reader033/viewer/2022061204/547e8933b37959822b8b546c/html5/thumbnails/19.jpg)
More Information
Yuichi Yoshidahttp://github.com/sonsongithub/@sonson_twit
sonson.jphttp://sonson.jp
Apple Handoff プログラミングガイドhttps://developer.apple.com/jp/devcenter/ios/library/ documentation/HandoffProgrammingGuide.pdf
Getting started with Handoffhttp://www.slideshare.net/yoshidayuichi1/yidevSlideShare - yoshidayuichi1