iBeacon同様、iOS 7の新機能として注目の「マルチタスキング」。ブログ記事「[iOSとAndroid機能比較] マルチタスキング」では、その概要をAndroidと比較して紹介しています。
下記画像は、ブログ記事からの引用です(画像をクリックすると引用元のページに遷移します)。
ブログ記事では、他にもバックグラウンド動作のために必要なクラスとして「Foundation.framework」の「NSURLSession」「NSURLRequest」クラスを紹介しています。
NSURLSessionについてのブログ記事は、後ほど紹介するとして、ここではマルチタスキングで具体的にどんなことができるようになるのかについてのブログ記事を2つ紹介します。こちらの2つでもNSURLSessionが紹介されています。
ブログ記事「[iOS 7] [MultiTasking] バックグラウンドで定期的にフェッチ処理を実行する」では、以下のように説明しています。
iOS7からバックグラウンドで定期的にフェッチ処理を実行することができるそうです。この機能を利用すれば、ネットワークから定期的にコンテンツを取得する必要のあるアプリでは、バックグラウンドで新しいコンテンツがあるかどうかチェックしてダウンロードしたりできるようです。
バックグラウンドで定期的にフェッチ処理を実行するために必要な手順は以下の通りです。
- プロジェクト設定でBackground fetchを有効にする
- 最小のフェッチ間隔を設定する
- application:performFetchWithCompletionHandler:メソッドを実装する
下記画像は、ブログ記事からの引用です(画像をクリックすると引用元のページに遷移します)。
また、ブログ記事「[iOS 7] [MultiTasking] プッシュ通知をトリガーにコンテンツをダウンロードする」では、以下のように説明しています。
iOS 7からプッシュ通知をトリガーにバックグラウンドでコンテンツのダウンロードが実行することができるそうです。 この機能を利用すれば、ネットワークから定期的にコンテンツを取得する必要のあるアプリでは、サーバに変更があった際にプッシュ通知を送信し、iOS端末はバックグラウンドで新しいコンテンツがをダウンロードしたりできるようです。
プッシュ通知をトリガーにバックグラウンドでコンテンツのダウンロードを実行するために必要な手順は以下の通りです。
- プロジェクト設定でRemote notificationsを有効にする
- application:didReceiveRemoteNotification:fetchCompletionHandler:メソッドを実装する
下記画像は、ブログ記事からの引用です(画像をクリックすると引用元のページに遷移します)。
Copyright © ITmedia, Inc. All Rights Reserved.