このページの本文へ

前へ 1 2 次へ

Apple Geeks ― 第72回

iPhone/iPadの「アプリ間連携」を活用する

2012年02月10日 12時00分更新

文● 海上忍

  • この記事をはてなブックマークに追加
  • 本文印刷

 本連載「Apple Geeks」は、Apple製ハードウェア/ソフトウェア、またこれらの中核をなすOS X/iOSに関する解説を、余すことなくお贈りする連載です(連載目次はこちら)。

 UNIX使い向けを始め、Apple関連テクノロジー情報を知りつくしたいユーザーに役立つ情報を提供します。

iOSの「アプリ間連携」にまつわる事情

 カーネルなど基盤部分の多くをOS Xと共有するiOSは、本質的にはマルチスレッド/マルチタスクのOSといっていい。しかし、iPad/iPhoneならではのエクスペリエンスを優先させたためか、はたまたハードウェア性能とのバランスを考慮してか、登場後しばらくはいくつかの例外を除き、ユーザーはシングルタスクOSに近い運用を強いられてきた。

 iOS 5の現在、その制限は緩和されマルチタスクで(常駐プロセスとして)動作するアプリが増加した。しかし、すべてのアプリに許されたわけではなく、用途は「オーディオ再生」か「位置情報の追跡」、「(VoIPなど)音声通話アプリケーションのセッション維持」に限定されている。それ以外のアプリは、ホームボタンをクリックしてウインドウを閉じると、バックグラウンド処理されることなく終了されてしまう。

バックグラウンドで動作するアプリは増えたが、すべてのアプリが許されるわけではない

 これはiOSの「仕様」であり、ユーザーに工夫の余地はないが、「アプリ間連携」という形で2つのアプリを取り持つことはできる。その方法は大きく分けて3つ、ペーストボードを利用したデータ共有(コピー&ペースト)、UIDocumentInteractionControllerクラスを利用したファイルの授受、そしてもうひとつが「URLスキーム」だ。今回は、そのうちURLスキームを使ったアプリ間連携術を解説しよう。

 なお、UIDocumentInteractionControllerクラスを利用する方法は、メールの添付ファイルを処理するとき現われる「次の方法で開く...」メニューが典型例だ。これはアプリ開発段階から対応するしかないため、ユーザーがカスタマイズする余地はない。コピー&ペーストに関する説明は、当コラムの読者には不要だろう。逆に言えば、URLスキームのみが、ユーザーに工夫の余地があるアプリ間連携術なのだ。

「次の方法で開く...」メニューも、iOSにおけるアプリ間連携機能の一種だ

前へ 1 2 次へ

この連載の記事

ASCII.jp RSS2.0 配信中