2015-07-10 54 views
0

我正在製作一個應用程序,可讓用戶定期創建新記錄,並讓他們提前幾天創建這些記錄。這幾乎總是在應用程序未運行時發生,因此我正在探索讓應用程序被喚醒以創建對象的選項。據我所知,有四個選項,其中一個可能不是真正的選項,因爲我試圖只使用CloudKit並避免創建服務器端組件。在計劃日期創建CloudKit記錄

選項1: 使用後臺提取來定期刷新記錄並檢查是否有任何更改。在這種情況下,除了需要創建的記錄類型之外,我可能還會有某種代表重現的CloudKit記錄。然後我可以檢查重現對象並在需要時創建新記錄

選項2: 當用戶安排重複時安排本地通知。我認爲這是可行的,但據我所知,即使它是靜默通知,該應用程序也不會實際啓動,與遠程通知不同。

選項3: 在本地編寫一些代碼,每次啓動應用程序時都會檢查數據結構,以檢查是否需要創建任何新記錄。

選項4: 創建一個服務器應用程序,爲我創建記錄。就像我說的,即使它通常是「最好的」選項,也不是我想要做的。

回答

0

對於選項1,您無法確定您的應用程序正在運行。 選項2不起作用。正如你所說,該應用程序不會被激活。或者通知必須保持沉默,用戶必須選擇打開應用程序。 如果用戶從不打開應用程序,可能會發生長時間不會創建記錄的情況,但選項3比1和2要好得多。 選項4是最好的選擇。你將完全控制何時添加什麼。

但是...您是否已經知道要添加哪些數據?那你爲什麼要添加這些數據?你不能只是計算它,並假設它在那裏?也許甚至基於設置記錄左右?

+0

我認爲選項1比選項3更可靠。是的,我們不保證每隔一段時間都會調用後臺獲取,但可能更有可能系統會喚醒您而不是用戶。我還留下了一部分內容,除了創建CloudKit記錄外,我還需要通過Trello API創建一些內容,這就是爲什麼我不希望事先創建所有內容。 – bringel

相關問題