iPhone Webview onBackground событие?

Я разрабатываю приложение для iphone, используя phonegap. Теперь я хочу сохранить состояние сеанса, когда приложение переходит в фоновый режим. Я хочу сохранить это состояние, даже если приложение будет убито ОС. (Просто подумайте о сохранении некоторых переменных в javascript, когда приложение переходит в фоновый режим)

Есть ли способ, которым я могу это сделать? Позволяет ли UIWebView выполнять JavaScript, когда приложение переходит в фоновый режим?

Спасибо

3 ответа

Решение

Я не думаю, что такое событие существует, поэтому я бы посоветовал вам всегда сохранять свое состояние, если вы изменяете его в своем приложении. Таким образом, вам не нужно сохранять при закрытии приложения.

Я думаю, что нет никакого способа достичь этого. Если кто-то нашел решение, пожалуйста, поделитесь.

Все, что я пытаюсь сделать, - это получить событие "приложение к фону" в моем веб-просмотре, чтобы я мог запустить некоторый код JavaScript в этот момент. Это похоже на выполнение кода Objective-C в applicationWillResignActivity, Так что, если у кого-то есть рабочий пример того, как это можно сделать, пожалуйста, ответьте.

В противном случае мне придется рассматривать это как "невозможная работа":(

Я не знаю о phoneGap, но в target-c вы можете добавить наблюдателя (зарегистрируйтесь для получения уведомлений, когда приложение уходит в фоновый режим)

 [[NSNotificationCenter defaultCenter] addObserver:self
    selector: @selector(enteredBackground) 
    name: UIApplicationDidEnterBackgroundNotification
    object: nil];

Затем создайте метод с именем enterBackground, и вы можете поместить код как:

[myWebView stringByEvaluatingJavaScriptFromString:@"Do something in javascript"];

где вы замените Do something in javascript с кодом, который вы хотите выполнить. Смотрите это: http://developer.apple.com/library/ios/documentation/uikit/reference/UIWebView_Class/Reference/Reference.html:

Другие вопросы по тегам