「Pin」這款 App 是如何做到不上傳用戶剪貼板內容並能夠推送剪貼板內容通知的?

「Pin」是App Store一個剪貼板應用,根據Pin的客戶隱私政策,對於剪貼板的內容,不會上傳到伺服器上。

但是在App中有個選項:「剪貼板內容推送」

打開後的確能夠推送剪貼板內容到iOS設備上。

請問技術方面是如何實現剪貼板內容不上傳到推送伺服器,並且能夠成功推送消息的?

-- 2016.05.20 更新

確認了下,「後台應用刷新開關」是打開的,並且也沒有開啟「省電模式」

在Mac版本複製文字,在設備上可以收到剪貼板的推送通知,但是沒有辦法複製到本地,必須手動點擊「雲端」,再去複製

如果保持 Pin 在後台的話

可以正常複製到本地

iOS版本 9.3.2, OS X 版本 10.11.5


謝邀。

首先聲明,這個 app 是我寫的,但這題不是我自問自答,我不會做這樣無聊的推廣。

下面回答問題:

用的是 CloudKit

剪貼板數據在 iCloud 伺服器上面,用的是 CloudKit 的 Private Database,所以我不用自建伺服器,這個資料庫只有登錄了同一個 iCloud 賬號的人才能訪問到,他是完全私有的。

CloudKit 有一個 Subscription 功能,可以在數據發生變化的時候把通知(APNS)推到訂閱了的設備上。

相關參考鏈接:

https://developer.apple.com/icloud/

https://developer.apple.com/library/ios/documentation/DataManagement/Conceptual/CloudKitQuickStart/Introduction/Introduction.html


推薦閱讀:

TAG:iOS | iOS應用 | iOS開發 |