iOS 5ベータ版で微妙な変更が見られました。どうやらAppleは、開発者がiOSデバイスの固有識別番号(UDID)にアクセスする方法を変更しているようです。この概念に馴染みのない方のために説明すると、「UDID」とは、開発者が特定のデバイスごとにアプリのユーザーを識別するためのものです。
iOS 5では、Appleは開発者によるiOSデバイスのUDIDへのアクセスを禁止し、代わりにアプリ固有のUDIDの作成を許可しました。これは基本的に、モバイル広告やゲームネットワークが、トラッキングやインベントリのためにデバイス固有のUDIDにアクセスできなくなることを意味します。これは、これまでこれらのシステムが常に利用してきた手段です。
TechCrunch が指摘しているように、アプリ開発者は iOS 5 でユーザーを追跡するために、ゼロからやり直さなければならないだろう。
Apple は開発者向けドキュメントでこの変更について次のように説明しています。
iOS 5.0 では非推奨
uniqueIdentifier
さまざまなハードウェアの詳細に基づいて各デバイスに固有の英数字文字列。(読み取り専用) (iOS 5.0 では非推奨です。代わりに、アプリに固有の一意の識別子を作成してください。)
UDIDは、広告代理店にとってモバイルデバイスをトラッキングする上で非常に重要なツールです。iPhoneに固有の識別子が付与されていれば、そのデバイス(とそのユーザー)の使用状況をアプリ間で追跡できます。しかし、このシステムは、今秋iOS 5が一般公開されると、開発者が利用できなくなります。つまり、広告代理店は、現在UDIDで使用されているルートレベルの方法ではなく、いわば「ウェブCookie」のような手段を使ってユーザーをトラッキングするしかなくなるのです。
Appleは理論的には、サードパーティ開発者によるUDIDへのアクセスを禁止しつつ、シリアル番号はGame CenterやiAdsといったApple独自のネットワークでのみ利用できるようにすることも可能です。この動きは、Apple独自の技術にiOSプラットフォームにおける優位性をもたらすでしょう。
AppleInsider は、この iDevice 認識の変更は今秋に iCloud とも密接に統合されると指摘しています。
この変更はiCloudの登場と同時に行われ、ユーザーが承認したアプリはiCloudの新機能「ドキュメントとデータ」を利用して、デバイス間で固有のキーを共有できるようになります。例えば、開発者はiCloudを利用して、クラウド上でキーと値のデータを共有することで、ユーザーのデバイス間でアプリの外観や状態をカスタマイズできます。
もう一つの懸念点は、これがサードパーティ製アプリのベータテストにどのような影響を与えるかということです。現在、開発者はUDIDに対応したアプリのコピーをベータテスターに送信できますが、iOS 5以降では状況が一変する可能性があります。
Apple は、セキュリティ対策としてこのプロトコルを変更する予定であり、iOS をプライバシーを重視したプラットフォームとして推進する予定です。
iOS開発者の皆さん、AppleがiOS 5でこのような変更を加えたのはなぜだと思いますか?「セキュリティ」への意識でしょうか?それとも何か他の理由でしょうか?皆さんのご意見をぜひお聞かせください。