我想在iOS
中创建一个后台服务应用程序,就像我们在android中没有Intent-filter(没有活动)一样,用户看不见但仍然在设备上退出。
我需要在此服务应用程序中保留一个数据库文件,该用户只需要安装在设备中,但不能为用户启用或显示。
我尝试在info.plist
中使用SBAppTags,它成功地从跳板隐藏了应用程序图标,但仅用于模拟器而不是用于真正的iPhone设备。从iOS 8开始,Apple已经关闭了SBAppTags功能,因此无法使用它来隐藏跳板中的应用程序。还有其他可以在iOS中使用的类似于此的东西吗?
在android中,我为服务应用程序创建了Intent-filter,只需要从Play商店安装一次,然后对用户保持不可见。
如果有人在iOS上做过类似的事情,请在下面评论。
后台服务是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),则需要将其添加到您的功能中