как в iOS сделать комара в фоновом режиме

У меня возникла проблема с разработкой приложения для iOS с помощью libmosquitto.

в моем коде AppDelegate.swift

import UIKit

@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate, MosquittoClientDelegate{

    var window: UIWindow?
    var client: MosquittoClient?

    func didPublish(messageId: UInt) {
        println( "didPublish \(messageId)" )
    }
    func didReceiveMessage(mosq_msg: MosquittoMessage!) {
        println( "didReceiveMessage [ \(mosq_msg.mid)-\(mosq_msg.topic) ] \(mosq_msg.payload)" )
    }
    func didDisconnect() {
        println( "didDisconnect" )
    }
    func didConnect(code: UInt) {
        println( "didConnect \(code)" )
        if code == UInt(MOSQ_ERR_SUCCESS.value){
            client?.subscribe("sample", withQos: 1)
        }
    }
    func didSubscribe(messageId: UInt, grantedQos qos: [AnyObject]!) {
        println( "didSubscribe" )
    }
    func didUnsubscribe(messageId: UInt) {
        println( "didUnsubscribe \(messageId)" )
    }

    func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {        
        client = MosquittoClient(clientId: "qq")
        client?.host = "stick.coffee"
        client?.port = 1883
        client?.delegate = self
        client?.connect()
        return true
    }
}

Это работает, как я думаю, за исключением случаев, когда приложение закрыто.

Я хочу получить сообщение, даже если приложение закрыто.

и я обнаружил, что есть режим для фона.

  • Аудио и AirPlay
  • Обновления местоположения
  • Голос по IP
  • Загрузка газетного киоска
  • Связь с внешним аксессуаром
  • Использует аксессуары Bluetooth LE
  • Действует как аксессуар Bluetooth LE
  • Фоновая выборка
  • Удаленное уведомление

какой режим лучше для меня? Или есть какой-то пример для этой заглушки?


person redbit    schedule 10.02.2015    source источник
comment
Не имеет отношения к вашему вопросу, но не могли бы вы подсказать, где я могу получить libmosquitto для iOS? Я скачал файлы и поместил в папку, но в ней не было флага With_TLS.   -  person Sundeep Saluja    schedule 25.02.2016


Ответы (1)


Да, я обнаружил, что нет никакого метода для фонового запуска.

но voip может работать в фоновом режиме, если нет необходимости загружать AppleStore.

поэтому я реализую с voip.

person redbit    schedule 02.03.2015