CNContactViewControllerをPeekしようとすると真っ白い画面になることがある


名前を強く押された(Peek)ら連絡先情報を表示しようとしています。

UIViewControllerPreviewingDelegateの  
previewingContext:viewControllerForLocation:で  
[CNContactViewController
viewControllerForContact:contact];を使ってCNContactViewControllerのインスタンスを取得しています。

しかし、テストすると表示される人と表示されない人があり表示されない場合は

plugin com.apple.MobileAddressBook.ContactViewViewService interrupted  
viewServiceDidTerminateWithError:: Error
Domain=_UIViewServiceInterfaceErrorDomain Code=3 "(null)"
UserInfo={Message=Service Connection Interrupted}

というログが書き出されています。  
表示される・されない人は常に同じなので、連絡先データが関連しているようにも思えます。

何をチェックすればいいのでしょうか？

ちなみに実機(iOS 9.0.2, iOS 9.1)でテストしています。




その後のテストでUINavigationControllerに含まれていると問題ないことがわかりました。しかし、それだと問題があるのでその方法は使えません。

解決策としてCNContactViewControllerのdisplayedPropertyKeysに任意の項目だけを指定することで回避することができました。

