我一直在研究Reachability類,並嘗試了Apple樣本和ddg中的一個。我想知道Reachability類是否在啓動通知程序後繼續發送/接收數據。Reach-ability類是否繼續在iOS開發中發送/接收數據?
當我開發一個經常連接到不同主機的應用程序時,我決定編寫一個單例並附加我需要的可達性類。一旦應用程序啓動,可啓動類將啓動並啓動它們的通知程序。我使用單例方法,因爲我希望這個單例類是可移植的,並且可以在沒有太多重寫的情況下應用於其他應用程序。我不確定這樣實施是否好主意,但它工作得很好。
但是,有人報告說,使用該應用程序後,他的設備電池消耗速度顯着加快,並且有人報告了更多的數據使用情況。我的應用程序不會在後臺發送/接收數據,所以我開始想知道它是否與可達性有關。
我試着通過Instrument來分析能源使用情況,我注意到即使我將應用程序置於閒置狀態,仍然有通過網絡接口進入的連續小數據(平均數百字節)。但是,幾乎沒有數據發送出去。
我知道Reachability在啓動時需要數據使用(解析DNS等),但我不確定啓動通知程序後是否仍然繼續使用數據。有人可以告訴嗎?
我對低級編程不熟悉,如果有人能解釋Reachability如何工作,那將會很好。
如果您註釋掉可達性代碼並假定它始終得到連接,您的應用是否仍在使用網絡? – deanWombourne
啊..我沒有考慮到它,因爲評論可達性破壞了我的應用程序。無論如何,我可以確認在追蹤網絡活動後可達性不會使用數據。 –