2015-10-08 91 views
10

使用WatchConnectivity框架發送數據時,無論是從手機還是手錶,反之亦然,在框架給我WCErrorCodePayloadTooLarge錯誤之前有效負載有多大?通過WatchConnectivity發送數據時有效載荷有多大?

我找不到蘋果文檔的答案,目前在互聯網上似乎沒有太多關於此的信息(實際上,使用Google搜索WCErrorCodePayloadTooLarge只給出了4個結果)。

有沒有人測試過試圖找到答案?如果這個問題沒有得到答案,我會嘗試自己做,併發布結果。

到目前爲止,我所擁有的所有信息是它可以支持大於30 MB的文件,其中可能能夠支持大於30 MB的文件。我認爲這是因爲我在我的iPhone上拍攝了大量原始照片,而且他們通常大小約爲36MB,並且它們總是出現在我手錶的照片應用程序中。

作爲參考,WCSession的文檔具有WCErrorCodePayloadTooLarge如下描述:

指示該項目被髮送的錯誤超過了最大大小 限制。數據字典和 文件都可能出現此類錯誤。

適用於watchOS 2.0及以後的版本。

回答

24

根據該專用符號WCPayloadSizeLimitApplicationContextWCPayloadSizeLimitMessageWCPayloadSizeLimitUserInfo,極限(如9.0.2的iOS的)是:用於消息

  • 65,536字節

    • 65,536字節(65.5 KB)( 65.5 KB)用於用戶信息
    • 262144個字節(262.1 KB),用於一個應用程序上下文

    我不知道蘋果爲什麼不記錄這一點,除了通過WatchConnectivity發送字典可能很難確定它們的大小。當然,可接受的尺寸可能會隨着時間而改變。

    發送文件時,我找不到(也沒有親自觀察)任何最大大小限制,但我注意到,當您發送大型文件(數百MB)時,它似乎變得不可靠。

  • +0

    非常感謝!是的,發送一個大於65.5KB的字典作爲複雜數據與transferCurrentComplicationUserInfo:在WCSession失敗我(從未交付,iOS 9.2.1,watchOS 2.1) – ersjoh

    +0

    @ersjoh那麼你如何發送一個大字典? http://stackoverflow.com/questions/42783611/userinfotransfer-payload-is-too-big – toast

    +0

    @AriX那麼你如何發送一個大字典? http://stackoverflow.com/questions/42783611/userinfotransfer-payload-is-too-big – toast

    相關問題