ショートバージョン:私のアプリのバックグラウンドフェッチでは、webviewでコンテンツを読み込もうとすると何もしません。バックグラウンドフェッチでUIWebViewをロード
ロングバージョン:私は、プロジェクト内の右の機能を設定した間隔フェッチし、例のように
- (void) application:(UIApplication *)application performFetchWithCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler
メソッドを実装し、それが動作します。しかし、私のバックグラウンドフェッチを完了するために、UIWebViewにいくつかのコンテンツをロードする必要があります。そして、これは動作しません。私が呼ぶとき、単にプロセスが何らかの形で「迷子」:
[myWebview loadRequest:request];
(もちろん、それは時にフォアグラウンドで動作しますが、バックグラウンドでたときに何もしません)。
「フォアグラウンドモードでアプリの復帰まで(それは我々が背景にあり、意味をなさない!)だから、
私もメインスレッドでロードするのWebViewを強制しようとしたが、その後システムは、単にそれを停止バックグラウンドでUIWebViewをロードする方法がありますか? NSURLSessionを使ってコンテンツをダウンロードすることはできません。なぜなら、Webページにはフレームの一部をロードするjavascriptが含まれているからです(ウェブページの再デザインを求めることはできません)。
編集:たぶん私は質問を書いたときに十分crearはありませんでしたが、バックグラウンドで動作しませんをフェッチしながら、(同様の方法O dispatch_asyncで)main_queueでタスクを実行しようとしています。私はそれを尋ねる前に試しました...
いつ完了ハンドラを呼び出していますか? –
Webビューがロードされた後に呼び出されるのを待ちますが、ロードも開始しません。 –
バックグラウンドで実行しているときにWebビューが実際にビュー階層内にありますか(つまり、 ? –