2017-07-12 10 views
0

私はiOSアプリケーションとwatchOSアプリケーションを持っています。 iOSアプリは、初めてwatchOSアプリが起動したときに、watchOSアプリへのアクセストークンを提供します。このwatchOSアプリケーションは、NSURLSessionDownloadTaskリクエストを送信することによって、定期的にサーバーからデータ更新を取得し始めます。watchOSはNSURLSessionDownloadTaskリクエストの送信を停止します

マイNSURLSessionは、次のように構成されています

NSURL *url = [NSURL URLWithString:API]; 
NSMutableURLRequest *request = [self buildRequestForURL:url andMethod:@"POST"]; 

NSString *body = [NSString stringWithFormat:<some request params>]; 

[request setHTTPBody:[body dataUsingEncoding:NSUTF8StringEncoding]]; 

[[self.urlSession downloadTaskWithRequest:request] resume]; 

watchOSアプリが正常にいくつかの時間のための更新を受信:

NSURLSessionConfiguration *config = [NSURLSessionConfiguration backgroundSessionConfigurationWithIdentifier:[[[[NSBundle mainBundle] bundleIdentifier] stringByAppendingString:@".backgroundsession"] stringByAppendingString:[NSUUID UUID].UUIDString]]; 
config.sharedContainerIdentifier = APP_GROUPS_ID; 
self.urlSession = [NSURLSession sessionWithConfiguration:config delegate:self delegateQueue:nil]; 

それから私は、定期的な方法を、次のリクエストを送信します。 iOSアプリがバックグラウンドモードにあるとき、または手動でアンロードされているときでも、アップデートを正常に受信します。

iPhoneOSの画面をロックすると(ちょっとしたことがあっても数分後)、watchOSアプリはアップデートの受信を停止します。

誰かがwatchOSアプリケーションで同じ問題を経験しましたか?

+0

'WKURLSessionRefreshBackgroundTask'を使用していますか? –

+0

@JensPeterいいえ、私はしません。 –

答えて

関連する問題