Можно ли в iOS сделать приложение с фоновым сервисом, которое будет невидимым для пользователя и скрытым от трамплина? - PullRequest
0 голосов
/ 26 апреля 2019

Я хочу сделать приложение фоновой службы в iOS точно так же, как у нас есть Intent-фильтр в Android (без активности), который невидим для пользователя, но все еще выходит на устройстве.

Мне нужносохраните файл базы данных в этом сервисном приложении, который пользователю нужно только установить на устройстве, но он не запускается и не виден пользователю.

Я пытался использовать SBAppTags в info.plist, и он успешно скрывает значок приложения от трамплина, но только для симулятора, а не для реального устройства iPhone.Начиная с iOS 8, Apple отключила функцию SBAppTags, так что ее нельзя использовать, чтобы скрыть приложения от трамплина.Есть ли что-нибудь еще, что можно использовать в iOS, похожее на это?

В Android, я создал Intent-фильтр для сервисного приложения, который нужно установить только один раз из магазина игр, и после этого он остается невидимым дляпользователь.

Если кто-то делал что-то подобное в iOS, пожалуйста, прокомментируйте ниже.

1 Ответ

1 голос
/ 26 апреля 2019

Фоновая служба - это функция, предоставляемая Android.

В iOS лучшее, что вы можете сделать, это создать задачу, например.задача загрузки и передать ее на OS, когда приложение входит в фоновый режим.

Но эта фоновая задача будет работать только в течение максимум 30 секунд или около того (вы никогда не сможете предсказать).И может быть убит ОС в любое время, без каких-либо уведомлений.

    let session = URLSession(configuration: URLSessionConfiguration.default)

    if let downloadURL = URL(string: "YOUR FILE URL"){
        let downloadTask = session.dataTask(with: downloadURL)
        downloadTask.resume()
    }

Также, если вы хотите использовать фоновый сервис для определенных задач, таких как VOIP, вам необходимо добавить его в свои Capabilities

Configure background modes

Загрузить документацию с заданием

Документация по фоновым режимам

...