ニール・ヒューズ
· 2分で読めます
Appleは最近、コンピュータを用いてプライベートAPIの使用を自動スキャンし始めました。この新しい自動スキャンは、AppleがApp Storeに導入してきたルールに一切変更を加えるものではありません。プライベートAPIはこれまでiPhoneソフトウェアでの使用が禁止されてきました。しかし、 Gizmodoによると、APIがルールに該当するかどうかを判断するのが難しいため、このルールは完全には適用されていなかったとのことです。
iPhone開発者には、App Store開発者契約の条件の範囲内で、多数のパブリックAPIが提供されています。しかし、中には利用が制限されているプライベートAPIも存在します。
「プライベートAPIとは、Appleだけが使用する呼び出しや機能であり、開発者にはあまり知らされていません」とジョン・ハーマン氏は説明した。「これにはいくつかの理由が考えられます。セキュリティや一貫性の理由から、開発者に使わせたくないと考えているか、あるいはまだ完成しておらず変更される可能性があるため、開発者が使うのはリスクが高いということです。これらのプライベートAPIは実質的に不安定なので、次のシステムアップデートでアプリが壊れてしまう可能性があります。」
新しい「静的解析ツール」は、Appleが定めたルールを曲げたり破ったりするソフトウェアを使って、これまで承認プロセスをすり抜けてきた可能性のある開発者を捕捉することを目的としています。理論上は、法を遵守する開発者にとってシステムに変更を加えるものではありませんが、App Storeでの配信が承認される前に、ソフトウェアをより徹底的に解析できるようになります。
しかし今週、開発会社RogueSheep Incorporatedのクリス・パリッシュ氏は、同社の新規アプリケーション「Postage」が誤検知のためシステムによって拒否されたと発表しました。拒否の詳細は技術的なものですが、簡単に言うと、RogueSheepがソフトウェア内の独自のカテゴリメソッド名にプライベートAPIメソッド名を使用していたことが拒否の原因でした。パリッシュ氏は実際にはプライベートAPIを使用していなかったと主張していますが、開発者は既にこの問題に対処しています。
パリッシュ氏は、Appleが彼や他の開発者に分析ツールのコピーを提供し、正式に提出する前に自身のビルドをテストできるようにしてほしいと述べた。彼のチームは、分析に不合格だったことが判明するまで、14日間の審査プロセスが完了するまで待たなければならなかったという。
「この問題や、App Store 提出時の新しいコード分析部分におけるその他の誤検知の問題がすぐに解決されることを期待します」と彼は述べた。
Appleは今月初め、Development Centerウェブサイトに、開発者が提出されたアプリケーションの承認状況を確認できる機能を追加しました。この機能により、開発者は提出したアプリケーションの承認状況が「審査中」「販売準備完了」「却下」などのカテゴリーで確認できます。