Форум программистов, компьютерный форум, киберфорум
Программирование iOS/iPhone
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.87/15: Рейтинг темы: голосов - 15, средняя оценка - 4.87
1 / 1 / 0
Регистрация: 09.11.2015
Сообщений: 155

Фоновый режим

25.06.2018, 11:42. Показов 3389. Ответов 23
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте уважаемые форумчане!
Возник такой вопрос, можно ли в iOs сделать так, чтобы программа работала в фоновом режим и ОС не убивала это процесс после закрытия программы?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
25.06.2018, 11:42
Ответы с готовыми решениями:

Фоновый режим
Как программно Вкл/Выкл Фоновый режим ? ------------- Android 2.3.3

Фоновый режим
Здравствуйте. Да, я знаю, что тема давно избитая, но все же, как сделать, чтобы программа запускалась в фоновом режиме? Под этим режимом...

Фоновый режим
Можно ли сделать что бы программа выполнялась в фоновом режиме. И как это можно сделать. Приведите пример пожалуста ну или хотя бы где...

23
1570 / 1168 / 426
Регистрация: 08.05.2012
Сообщений: 5,219
25.06.2018, 12:04
Что ты понимаешь, под "закрытием программы" в ios?
0
1 / 1 / 0
Регистрация: 09.11.2015
Сообщений: 155
25.06.2018, 12:48  [ТС]
ExFau$t, даже не знаю, когда пользователь её закрывает, не сворачивает, а именно закрывает.
0
67 / 67 / 19
Регистрация: 13.07.2015
Сообщений: 219
26.06.2018, 20:35
Цитата Сообщение от serSeventin Посмотреть сообщение
Здравствуйте уважаемые форумчане!
Возник такой вопрос, можно ли в iOs сделать так, чтобы программа работала в фоновом режим и ОС не убивала это процесс после закрытия программы?
Нельзя оставить приложение в фоновом режиме, только какое-то время приложение сможет поработать в фоне, а затем система iOS его завершит принудительно в любом случае. Apple заботится об энергоэффективности, и любые лишние процессы исключаются. Но возможно разбудить приложение с помощью пуша.

Возможно стоит рассмотреть другое решение реализации. Хоть скажите какую задачу решает ваше приложение?
0
1 / 1 / 0
Регистрация: 09.11.2015
Сообщений: 155
26.06.2018, 20:45  [ТС]
Задача такая, что-то вроде Яндекса на Android. У Яндекса в Foreground висит виджет, где изменяются значения погоды и кусов валют, всё это работает в фоне и Android'ом не убивается. А как также сделать в iOs, мне это жизненно необходимо!
0
67 / 67 / 19
Регистрация: 13.07.2015
Сообщений: 219
26.06.2018, 22:35
Если я правильно понял, вам необходимо создать приложение с расширением. Для этого в iOS есть Widgets
можно узнать о них здесь https://developer.apple.com/de... s/widgets/
а подробнее что это и как создать простое такое приложение см. здесь https://developer.apple.com/li... index.html
либо ищите туториалы по ключевым словам из ссылок выше.
0
1 / 1 / 0
Регистрация: 09.11.2015
Сообщений: 155
19.07.2018, 13:34  [ТС]
Митя800, я внимательно изучил, всё что связанно с виджетами, но столкнулся с тем, что они обновляются только тогда, когда пользователь принудительно хочет это сделать, а нельзя-ли сделать так, чтобы виджет автоматически обновлялся всегда, допустим, с периодичностью в 5 минут?
0
29 / 28 / 8
Регистрация: 06.10.2012
Сообщений: 133
23.07.2018, 16:54
Цитата Сообщение от serSeventin Посмотреть сообщение
нельзя-ли сделать так, чтобы виджет автоматически обновлялся всегда, допустим, с периодичностью в 5 минут
Пользователь взаимодействует с виджетом -> виджет живой, данные обновляются, кэш/БД синхронизируются -> пользователь уходит на другой экран -> всё засыпает (willResignActive/didEnterBackground)
Какой смысл обновлять виджет, если он неактивен, т.е. юзер с ним не взаимодействует?
0
1 / 1 / 0
Регистрация: 09.11.2015
Сообщений: 155
23.07.2018, 17:10  [ТС]
cin_cout, дело в том, что мне нужна подпрограмма, которая будет работать после закрытия основной программы. Я думал это сделать через виджет, но он срабатывает только после взаимодействия с пользователем. Нет ли способа сделать рабочую подпрограмму, которая будет активизироваться хотя бы раз в пять минут?

Добавлено через 8 минут
Предположим, если взять программу Будильник, коих на AppStore очень много, почему бы не сделать так, чтобы просыпалась только часть подпрограммы? И как я уже ранее сказал, каждые 5 минут, неужели так сделать нельзя и это будет противоречить политики Apple?
0
29 / 28 / 8
Регистрация: 06.10.2012
Сообщений: 133
23.07.2018, 17:12
Мне кажется, что-то не так с постановкой задачи изначально. Читайте App Programming Guide от Apple, что можно и что нельзя, чтобы было четкое понимание.
Приоритет iOS app = взаимодействие юзера и UI. Есть четко определенный круг задач, которые допускают background performance (навигация и тд).
0
1 / 1 / 0
Регистрация: 09.11.2015
Сообщений: 155
23.07.2018, 17:15  [ТС]
cin_cout, давайте опустим, что можно, а что нельзя. Кто-нибудь может объяснить, как работает будильник в ios или дать ссылку на хороший гайд?
0
29 / 28 / 8
Регистрация: 06.10.2012
Сообщений: 133
23.07.2018, 17:38
Цитата Сообщение от serSeventin Посмотреть сообщение
дать ссылку на хороший гайд
Клон оригинального будильника iOS
0
1 / 1 / 0
Регистрация: 09.11.2015
Сообщений: 155
23.07.2018, 17:55  [ТС]
cin_cout, спасибо
0
1 / 1 / 0
Регистрация: 09.11.2015
Сообщений: 155
24.07.2018, 13:21  [ТС]
А тогда по какому принципу работают программы "Найти Друзей", "Найти Айфон", ведь после разрешения слежения, я могу наблюдать за ними в реальном времени и им не нужно, чтобы программа была всё врем в оперативной памяти или висела в фоне, она может быть закрыта(именно закрыта). К тому же данные программы обладают именно тем функционалом, который мне нужен. Никто не знает как это реализовать?
0
1 / 1 / 0
Регистрация: 09.11.2015
Сообщений: 155
25.07.2018, 12:35  [ТС]
Дабы не создавать новую тему ответе, пожалуйста, на пару вопросов.
1. Можно ли после закрытия программы(именно закрытия) отправить локальный нотификейшин. На андроиде например, если пользователь закрывает программу, то есть блок onDestroy(), где можно вызвать свой блок кода перед завершением программы, это может быть также notification;

2. Можно ли напрямую из программы перейти в эту настройку телефона?
Миниатюры
Фоновый режим  
0
1570 / 1168 / 426
Регистрация: 08.05.2012
Сообщений: 5,219
25.07.2018, 17:50
onDestroy это часть жц активити (кстати не всегда вызывается при завершении), по аналогии контроллеры тоже имеют свои жц.

Mожно.
0
1 / 1 / 0
Регистрация: 09.11.2015
Сообщений: 155
25.07.2018, 21:15  [ТС]
У меня к Вам ещё такой вопрос, я уже смирился с тем, что на айфоне нельзя сделать так, чтобы часть программы работала после освобождения из оперативной памяти, в AppStore я нашёл программу trackerometer, которая запрашивает разрешение на геопозицию, там есть пункты "разрешить во время работы программы", "разрешить всегда" и "никогда". Я выбираю "разрешить всегда" и программа работает в фоновом режиме, передавая беспрерывно геолокацию пользователя, если вдруг программы высвобождается из ОЗУ, а именно я её закрываю сам, то программа использует нотификейшин для предупреждения о завершении передачи данных. Я сделал также у себя в программе, но отработав 15 минут программ перестаёт передавать геолокацию(нотификейшины пока не делал), не могу понять почему. Если кто знает напишите пожалуйста решение этой проблемы.
0
67 / 67 / 19
Регистрация: 13.07.2015
Сообщений: 219
26.07.2018, 09:11
serSeventin, отправь нотивикейшн с сервера, тогда приложение проснется. Необязательно все нотификации алертить пользователю.
0
1 / 1 / 0
Регистрация: 09.11.2015
Сообщений: 155
26.07.2018, 09:55  [ТС]
Митя800, это понятно, что с сервера отправить нотификейшин, но нужно сначала узнать, когда отправлять, а для этого нужно отследить закрытие программы, но меня пока интересует другой вопрос, почему программа не работает в фоне.

Добавлено через 15 минут
С геопозицией кажется разобрался, если не двигаться она умирает, а после начала движения опять работает. Тогда другой вопрос, можно ли создать свой механизм в iphone, чтобы там крутились мои функции и работали после сворачивания приложения в фон, самое главное чтобы этот сервис работал всегда, пока приложение не закроют.
0
29 / 28 / 8
Регистрация: 06.10.2012
Сообщений: 133
26.07.2018, 19:33
Цитата Сообщение от serSeventin Посмотреть сообщение
Тогда другой вопрос, можно ли создать свой механизм в iphone, чтобы там крутились мои функции и работали после сворачивания приложения в фон, самое главное чтобы этот сервис работал всегда, пока приложение не закроют.
NSThread. У потока свой RunLoop. Сколько угодно создать можно.
Можно не возиться с потоками, а на уровне абстракции чуть повыше порулить GCD.
Еще повыше - NSOperationQueue
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
26.07.2018, 19:33
Помогаю со студенческими работами здесь

Фоновый режим
Как сделать в Windows так, чтобы программа Ruby запускалась в фоновом режиме (выполнялась без открытия окна консоли)?

Фоновый режим
Здраствуйте... у меня вопрос... мне нужно послать приложение в фоновый режим я делаю отдельный поток Servise но там не поддержеваетса все...

Фоновый режим в C#
Помогите пожалуйста, объясните как на шагомерах идёт счёт шагов в фоновом режиме, ибо мой считает только тогда, когда приложение открыто

Фоновый режим
Здравствуйте! Как создать приложение в фоновом режиме?

фоновый режим
Всем привет! Суть проги - При нажатии кнопки идёт проверка на цвет пикселя под курсором, когда цвет совпадает, срабатывает процедура....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru