iOS9からGKSession over Bluetoothが無効に
ユーザの方からおんぷ先生アプリが接続できないという報告があり調べていたところ、iOS9からGameKitのGKSessionがBluetoothでは利用できなくなっていることがわかった。
Bluetooth over GKSession or MultipeerConnectivi… | Apple Developer Forums
もともと iOS7から deprecated にはなっていたのだが、iOS9からはGKSessionがサポートしていたBluetooth上で使えなくなっているとのこと。
しかし同じLAN内だとWi-Fiではつながってしまうので、発見が遅れてしまった。
かわりに MultipeerConnectivity を使うことが推奨されているのだが、MultipeerConnectivity FrameworkはiOS7からのサポートなので、iOS5までしかアップデートできないiPad1はサポート外となってしまう。
アプリの設定で GKSessionとMultipeerConnectivityを切り替えて両方サポートすることも考えたが、iPad1では今のアプリを使い続けることもできるし、もし要望があればGKSession版を別途公開もできるということで MultipeerConnectivity に切り替えることにした。
当初、MCBrowserViewController や MCAdvertiserAssistant を使って実装していたが、UIがローカライズされていなかったり、問題が起きたときに調査しづらいので、結局 MCNearbyServiceBrowser や MCNearbyServiceAdvertiser などの少しローレベルなクラスを使って実装した。
[iOS 7] P2P 通信を手軽に実現する Multipeer Connectivity Framework を使ってみる | Developers.IO → これはホストとクライアントの区別なく書かれているので、わかりづらいことが判明。
第 3 回・iOSでMultipeerConnectivityを実装してみよう! | ギャップロ → のほうがわかりやすい。
Nearby Networking with Multipeer Connectivity – WWDC 2013 – Videos – Apple Developer → 30分あたりから、MCNearbyServiceAdvertiser や MCNearbyServiceBrowserを使う説明が始まる。
また、上を目指すプログラマーのためのiPhoneアプリ開発テクニック iOS 7編は MultipeerConnectivity を20ページ以上使って説明している。
関連記事
-
-
Amazon Book Marker 取り下げ
昨日2010/01/16(土)の朝に米Amazonより、ライセンス規約に違反していると警告がきたため
-
-
iPhone&Androidアプリ内課金プログラミング完全ガイド
こんなマニアックな本が11月に出ていたらしい。 立ち読みしてよさそうだったら買ってこよう。 売れ
-
-
[iPhone5] ステータスバーの謎の○(丸)表示
iPhone5使い始めて2日目、自宅でもLTE表示が出ていたのになぜかある時から○表示になってしまっ
-
-
iOS 4.2.1, iOS SDK 4.2, Xcode 3.2.5 にアップデート
iPhone 3GSを、昨晩でたと思われる、iOS 4.2.1にアップデートしてみる。 iOS 4.
-
-
Anker の高耐久ライトニングケーブルを買ってみた
立て続けに2本ライトニングケーブルが壊れたので、ふんぱつして高級ケーブルを買ってみた。 たしかに
-
-
App Store レビュー中
8月13日にApp StoreにSubmitしたiPhoneアプリがまだIn Review状態だ。果
-
-
メイドインジャパンとiPad、どこが違う? 世界で勝てるデジタル家電 感想
西田宗千佳氏の本はいつも面白い。 今回も予想に違わず面白かった。 自分も同じような情報は知っているは
-
-
[WatchKit] Apple WatchアプリをRejectされた話
Apple Watch はいつの間にか電池がかなり減っていることが多く、いつどのように減っているか知
-
-
Apple Special Event 2014
https://japanese.engadget.com/2014/09/09/9-9/
-
-
[iPad SDK] Popover中にTableViewを入れて、タップしたらPopoverを閉じたい
今作っている リズムくん for iPad で、拍子記号を Popover で選択できるようにしよう