ケイティ・マーサル
· 2分で読めます
Apple の iPhone SDK に定められた条件により、解釈コード、プログラム内のプログラム、バックグラウンド アプリケーションなど、いくつかの非常に価値の高いアプリケーションを携帯機器に移植できるという期待が弱まっている。
Appleは契約書の中で、「Appleの公開APIおよび組み込みインタープリタによって解釈・実行されるコードを除き、解釈済みコードをアプリケーションにダウンロードして使用することはできません」と述べています。「アプリケーションは、プラグインアーキテクチャの使用、他のフレームワーク、他のAPIの呼び出しなど、いかなる手段によっても、他の実行可能コードをインストールまたは起動することはできません。」
Mozilla開発者のロブ・セイヤー氏のブログ記事によると、額面通りに受け取ると、この制限は一見無害なアプリまでも禁止することになるという。セイヤー氏が開発したFirefoxウェブブラウザに加え、OperaやExcelといったプログラムは、ソフトウェア内部でスクリプト言語を使用しているため、そのままではiPhone上で動作することが禁止される。Quakeのように、バックグラウンドでインタプリタ型言語を使用するゲームもiPhoneでは動作しない。
開発者によると、WebアドオンやFlash、Rubyといったスクリプト言語も、デバイス側から非難される可能性があるという。この制限は、SunのJava計画を阻む可能性がある。Javaはコードを解釈するだけでなく、仮想環境内で他のプログラムも実行するからだ。PCMagのSascha Segan氏によると、Sunはこうした潜在的な障害を認識しているものの、 Appleとの直接的な交渉を含め、iPhone向けJavaエンジンを提供する方法を見つける可能性があるという。
「iPhone ベータ SDK ライセンス契約にサードパーティ製アプリケーションの配布を制限する可能性のある条項がある場合、これについては Apple と前向きな話し合いを行いたい」と Sun の Java マーケティング担当副社長 Eric Klein 氏は語る。
他の観測者にとってさらに懸念されるのは、Appleがサードパーティ製ソフトウェアをバックグラウンドで実行できないと宣言していることです。これがなければ、多くの開発者は、動作に永続性を必要とするプログラムの開発ができなくなるでしょう。これには、インスタントメッセージングソフトウェア、VoIP、その他のインターネット関連ツールだけでなく、シミュレートされたGPSツールなど、システムの他の部分をポーリングするソフトウェアも含まれます。TechCrunchのチーフであるマイク・アリントン氏らが指摘するように、これらのプログラムは通話やウェブ閲覧のために放置しておくと、即座にシャットダウンし、機能しなくなります。
Gizmodoの記事を含むSDKユーザーからの報告によると、Appleはバックグラウンドアプリケーションのルールをコードで強制しない可能性があるとのことです。つまり、アプリケーションの一時停止機能を停止させる方法が有効なのかもしれません。しかし、AppleはApp Storeでダウンロード用に提出されたプログラムのコードを検査するかどうかについてはまだ明言していません。検査すれば、こうした契約違反を迅速に検出できるはずです。
アップル自身は今のところこの状況についてほとんど明らかにしていない。同社の代表者は、この件に関してWiredの編集者からの質問に回答しなかった。