は、iPhoneのためのXMPPFrameworkは強力です。私はそれを稼働させていますが、10分間以上バックグラウンドで接続を維持するにはどうしますか?私はこれを達成するためのいくつかのドキュメント/ハウツーに感謝します。バックグラウンドでiphone ios xmppの接続を維持する方法は?
だから、ユースケースは、シンプルかつ一般的です:ジョーは、オンラインやiPhoneチャットアプリです。彼はチャットアプリを離れてSafariに行き、ゲームをしたり、映画をストリーミングしたり、他のものを3時間(またはそれ以上)もやります。ジョーはその間にメッセージを受け続けたいと思っています。
このサンプルアプリケーションを使用すると、Joeはバックグラウンドでローカル通知を受信できますが、わずか10分間は表示されます。関連するコードは次のとおりです(私は思います)。ありがとう!
他の人を助けるためには、xmppstreamプロパティenableBackgroundingSocketをYESにする必要があります(これはコピーする必要のあるiphoneXMPPサンプルプロジェクトで行います)、appname-info.plistつまり、iosChat-info-plist)ファイルに新しいキーと値のペアを追加する必要があります。どこか右クリックして「行を追加」する必要があります。キーの "必須バックグラウンドモード"を選択し、 "voip"と入力します。 Enterキーを押すと、「AppはVoice over IPサービスを提供します」という意味になります。これは、あなたがチャットアプリをバックグラウンドで開いたままにしている(私は思う)10分を得る。しかし、私たちは無期限に欲しいと思っています。答えは以下の方法にあると思います。私はちょうどこのメソッドまたは何かの中で "再接続"すると思いますか?(例えば、私はconnectメソッドを持っています)[self connect]?
- (void)applicationDidEnterBackground:(UIApplication *)application{
DDLogVerbose(@"%@: %@", THIS_FILE, THIS_METHOD);
if ([application respondsToSelector:@selector(setKeepAliveTimeout:handler:)])
{
[application setKeepAliveTimeout:600 handler:^{
DDLogVerbose(@"KeepAliveHandler");
// Do other keep alive stuff here.
}];
}}
こんにちは、これはどうやってできましたか? –