我正在構建一個應用程序,用戶必須在收到本地通知後的5分鐘內完成任務。如果任務完成,則不會發生任何事情,但如果任務未完成,則需要運行解析雲代碼功能。iOS檢測如果用戶不與本地通知進行交互
我的問題是,如果用戶不與本地通知交互,我需要執行解析雲功能。但是由於iOS挑剔的背景模式和多任務規則,我很難嘗試這樣做。
到目前爲止,我的應用程序效果很好,但如果操作未完成,且用戶不在應用程序中,我無法執行我的代碼。
如果有人能指出我在正確的方向,我會很感激。如果您需要更多的細節,請讓我知道!
雲代碼 -這是雲的代碼,我想執行,如果用戶不reciving當地notifcation的五分鐘之內完成了任務:
Parse.Cloud.define("chargeCustomer", function(request, response) {
Stripe.Charges.create({
amount: request.params['amount'],
currency: "usd",
customer: request.params['customerId']
}, {
success: function(customer) {
response.success(charge.id);
},
error: function(error) {
response.error("Error:" +error);
}
})
});
謝謝!
我有點困惑。我在解析背景作業方面做了一些研究,似乎是一個很好的解決方案。不過,我使用本地通知來提醒用戶不要推送。如果用戶設置鬧鐘重複每天,每個工作日等等,我該怎麼辦?如果任務沒有完成,我更新了我想要執行的雲代碼的問題。謝謝! – Jack 2014-11-08 20:07:23
有什麼想法?然後運行後臺作業必須有一個更簡單的方法。因爲那麼我需要將警報保存在設備上並進行解析。 – Jack 2014-11-09 22:50:41
如果您無法確定用戶是否正在運行應用程序,您希望如何在設備上進行此操作?您必須控制代碼執行,這意味着雲代碼。至少,我想不出一種方法讓你控制這個設備。您無法強制用戶打開您的應用程序,因此您無法強制代碼在雲中運行。如果是預定的本地通知,我會說你必須在Cloud Code中安排它,然後檢查(在「5分鐘之前」)用戶是否做了一些事情。如果你找出其他的東西,讓我知道。 – mbm29414 2014-11-10 00:55:17