2014-11-17 75 views
1

我有兩個應用程序UISupportedExternalAccessoryProtocols。這些正在與MFI certified設備進行通信。我如何知道會話已經在同一臺設備上與其他應用程序一起創建。因此,我可以提醒用戶,您無法一次創建多個使用相同附件的sessions我可以連接單個MFI配件和兩個應用程序嗎

請幫助解決這個問題。 在此先感謝。

回答

0

當一個應用程序連接並與您的MFI設備建立會話時,您可以將通知發佈到NSDistributedNotificationCenter。您的其他應用程序可以訂閱並監聽此消息,只要收到該消息並在其runLoop中處理它(當它返回到前臺時),就可以讓代碼阻止它在創建會話的同時進行。你將不得不嘗試這一點,但它可以完成。

1

我個人認爲AyBayBay的答案無效,因爲您使用「iOS標記」標記了您的問題,並且此平臺不支持NSDistributedNotificationCenter。 (有一個低級別的api來做到這一點,但我認爲這是在一個私人框架)

如果你假裝將你的應用程序定位到iOS8 +,最簡單的方法是使用iOS8的AppExtensions功能。我做了一些測試,在我的應用程序中創建會話,並使用下面的擴展將信息從另一個應用程序發送到設備。

一些應用程序 - >應用程序擴展 - >我的應用程序ext.device連接 - > ext.device

,所以我敢肯定,你可以在會話打開或檢查不和這個信息返回來電者應用程序。

供參考:要將信息傳遞給另一個應用程序,您也可以使用URLSchemes或UIPasteboard,但這兩種行爲的方式都不同於AppExtensions,我認爲它不適合您的情況。也許它可以幫助別人...

相關問題