SwiftによるiOSアプリ開発基本講座

マルチタスク対応のためのイベントを理解する

全333コースを10日間無料で

ぜひご覧ください。

無料で視聴する すべての加入プランを見る
または
iOSアプリで、他のアプリに切り替わったり、自分のアプリに戻ったりするたびに、それぞれのタイミングに応じた処理を行う方法について解説します。
講師:
08:21

字幕

このレッスンではiOS のマルチタスキング機能に対応するためにアプリケーションにどのようなイベントがやってくるのかを説明したいと思います。ではこれを説明するために新しいプロジェクトを作成しましょう。Welcome to Xcode の画面からCreate a new Xcode project を選択してください。あるいは、「File」メニューから「New」「Project」と選択しても同じことができます。それでは iOS Application の中からSingle View Application を選択してNext ボタンを押してください。Product Name のところにMultitaskingDemo と入力しておきましょう。そして Organization Name のところに自分の名前をOrganization Identifier にはmytest と入力しておきます。Language にはSwift を選択してください。Devices にはiPhone を選択します。一番下の Use Core Data のチェックマークは外しておきましょう。それでは右下の Next ボタンを押してデスクトップを選択してプロジェクトを作成します。 それではこのようにして作成したプロジェクトに対してアプリケーションの動作を確認するためのコードを追加していきましょう。まずはアプリケーション全体のイベントがやってくるAppDelegate のクラスに対してコードを追加していきます。まずはアプリケーションの起動の処理が終わったときに呼ばれるこの applicationdidFinishLaunchingWithOptionsこちらのメソッドがありますのでこれがやってきたときにprintln が表示されるようにしたいと思います。AppDelegate -didFinishLaunchingWithOptionsそしてさらに下の方も全てこの調子でですね。println を追加しておきましょう。printlnまず AppDelegate -applicationWillResignActive。そしてこの調子でですねコピーアンドペーストを繰り返しながらapplicationDidEnterBackgroundそしてapplicationWillEnterForegroundはいそしてapplicationDidBecomeActiveそして最後にapplicationWillTerminate とはいこのようにprintln を追加します。 それではさらにViewController に対してもいくつかのコードを追加していきましょう。ViewController にはビューが読み込まれたときに呼ばれるこの viewDidLoadというメソッドが用意されていますのでこの viewDidLoad の中でprintln。これが読み込まれたということを示すためにViewController のviewDidLoadこのように表示しておきます。はいそしてビューの中ではさらに表示される前と表示された後に対応することができるようになっていますのでViewWillAppear というメソッドも実装しておきます。println で ViewController のviewWillAppear、そしてこれによく似た名前の viewDidAppearビューが表示された直後に読まれるviewDidAppear というメソッドもあります。はいそしてあと二つ、ビューが viewDidDisappearviewWill ですね、まずviewWillDisappear でビューが消えようとしていることを示すこのメソッド。はいそして最後にビューが消えたということを示すviewDidDisappear というのがありますので、もうこれ今コピーアンドペーストしてWill を Did に変えました。 それだけの簡単なネーミングです。はいこのように 4 つの viewWillAppearDidAppearDidDisappear と Will ですねWillDisappear と DidDisappearこの 4 つのメソッドを追加しました。それではこのアプリケーションを実行してどのようになるのかということを見ていきたいと思います。まずアプリケーションを実行しましょう。実行ボタンを押してシミュレータ上でこのアプリを起動したいと思います。はいそしてビルドが終わって、iPhone の上でこのシミュレータの上でアプリケーションの実行が始まりました。するとまずこのように、AppDelegate のdidFinishLaunchingWithOptionsこちらが一番最初に呼ばれることがわかります。ですのでアプリケーションの一番最初に何かの処理をしたいというときには、いつでもこの中に処理を書けばいいということがわかります。そして ViewController の viewDidLoad がその次に呼ばれますので、その次に行いたい処理はこの viewDidLoad の中ですね、こちらで書くことになります。 そして ViewController のviewWillAppear が呼ばれてから画面にビューが表示され、そして viewDidAppear が呼ばれます。そして最後に AppDelegate のapplicationDidBecomeActive というのが呼ばれてこれでアプリケーションの動作が始まるわけです。ここですね。applicationDidBecomeActive。ここでアプリケーションの動作が始まります。それではシミュレータに戻って、シミュレータのホームボタンを押してみましょう。「Hardware」から「Home」と選択することもできますし、Command キーと Shift キーを押しながら H のキーを押しても、ホームボタンを押すことをシミュレータでできます。するとこのように、さらに追加で二つのメソッドが呼ばれたことがわかります。AppDelegate のapplicationWillResignActiveまずアプリケーションがアクティブでなくなりますよという通知を受け取ってから、applicationDidEnterBackgroundアプリケーションがバックグラウンドに入ったということを示すこのようなメソッドの呼び出しがあります。 はいそして、Command キーと Shift キーを押したままH のキーを二回トントンと連続して押してやると、このようにアプリケーションの切り替えの画面が表示されますが、このとき特にこのAppDelegate になにか呼ばれるということはありません。そして Multitasking のこちらのアプリケーションですね もう一度選択してはい表示してやると、アプリケーションが今度はWillEnterForeground前面に来ますよということを告げるこちらのメソッドが呼ばれて、そして実際にアプリケーションが前面にきたときにもう一度、これ最初と同じですね。最初の DidBecomeActive が呼ばれて、そしてさらにアプリケーションが切り替わった後も、この applicationDidBecomeActive が呼ばれます。なお ViewController に関しては、一度この viewDidLoad、WillAppear、DidAppear を経て表示された後は、特に新しくこの ViewController の通知がこないということもわかると思います。はいアプリケーション全体のイベントの流れは大体このようになっているんですが、一度このシミュレータの実行を終了しまして、このアプリケーション全体の設定をちょっと見ておきましょう。 アプリケーション全体の設定は、この Xcode の左上のこのプロジェクトの名前が表示されているところをクリックすることで、右側にこのように見ることができます。この中の Capabilities と書かれたこのタブを表示してですね、そこの下の方に辿っていくとここに Background Modes という設定項目があります。ここでこのオンオフスイッチがありますのでここをオンにしておくと、アプリケーションがバックグラウンドにいるときでも何かしらの動作を行うことができるそういう機能を追加することができます。通常のアプリケーションはバックグラウンドにいるときは何もせずにただ静かにしているだけなんですが、ここで例えばオーディオを鳴らし続けたいとかですね、あるいは現在位置を取得し続けたいとか、あるいは Voice over IP で電話のように音声通話をしたいといった、まあそういった様々なバックグラウンドの動作をこれで引き続き行うことができるようになります。ですので、必要に応じてこれらのチェックボックスをチェックするようにしてください。このレッスンでは、iOS のマルチタスキング機能に対応するためにアプリケーションにどのようなイベントがやってくるのかを説明しました。

SwiftによるiOSアプリ開発基本講座

このコースではiPhoneやiPadのアプリを作ってみたい方に向けて、簡単なiOSアプリを作りながらSwiftを使ったXcodeでの開発手順をひとつずつ丁寧に解説していきます。各レッスンではiOSのフレームワークの機能を確認しながら、アウトレットやアクション、MVCモデルやDelegateといったアプリ開発に必要な知識を説明します。

5時間10分 (53 ビデオ)
現在、カスタマーレビューはありません…
 
ソフトウェア・トピック
価格: 2,990
発売日:2015年10月15日

このコースは、「オンデマンド」でご利用可能であり、ダウンロードすることもオンラインで見ることもできます。

ダウンロードすると、オフラインでコースを使用し、豊富なインターフェースをフルに活用できます。複数のデバイスを使用したり、 一度に全コースをダウンロードしたくない場合は、アカントにログインして、ストリーミング・ビデオとしてコースのレッスンを視聴してください。

ビデオトレーニングをお楽しみいただけますように! お問い合わせは、cs-jp@lynda.com宛までご連絡ください。