[英]didReceiveMemoryWarning capabilities: how much could app do
好吧,我想知道應用程序收到內存警告時的應用程序“功能”。
- (void)applicationDidReceiveMemoryWarning:(UIApplication *)application {
DDLogVerbose(@"applicationDidReceiveMemoryWarning");
[self executeTasks];
}
可以建立藍牙連接嗎? ( [central connectPeripheral:perihperal options:nil]
)
可以掃描藍牙外圍設備嗎? (掃描從此時開始)
可以執行哪些后台任務?
我的擔憂:
我在該applicationDidReceiveMemoryWarning
處理程序中放置了establishConnections
代碼。 此代碼嘗試通過已知的uid( [central connectPeripheral:perihperal options:nil]
)建立與外圍設備的連接。 我認為此功能可能會受到限制,應用會被拒絕。
UPD:
我對核心藍牙的長期使用是否正確?
- (void)applicationDidReceiveMemoryWarning:(UIApplication *)application; // try to clean up as much memory as possible. next step is to terminate app
因此,如果后台服務將終止,則可以在didReceiveMemoryWarning
放置“建立連接”代碼,以防止連接丟失。 在該系統終止服務並注意這些連接后,將其作為“當設備出現在附近時使我的服務從睡眠中恢復的事件”
這里有幾個問題。 我只能先回答。
applicationDidReceiveMemoryWarning就是這樣,僅此而已:操作系統發出的一條消息,指出可用內存不足。 您可以根據自己的需要做任何事情,或者什么都不做。 如果需要,可以分配一百萬個整數的數組。
但是,當操作系統無法再為您的應用程序分配所需的內存時,您的應用程序將被終止。 內存警告只是在發生這種情況之前得到的好處,理想情況下,您可以采取一些措施來釋放內存。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.