私が考えることができる最大の理由は、プラットフォーム (この場合は iPhone または Android) のネイティブ言語/ライブラリを使用することで、システム設計者が意図したものにより近いユーザー インターフェイス/エクスペリエンスを提供できるようになることです。 Adobe AIRのようなもので何が可能になるかについて。
これは、必ずしも AIR が悪い、または優れたアプリケーションを開発できない可能性があることを意味するわけではありませんが、同じアプリケーション コードで複数のプラットフォームをターゲットにすることになり、各プラットフォームには独自の微妙な (または主要な) 要素があるためです。常に説明できるとは限らない違いがあるため、必然的に、すべてのターゲット プラットフォームで実行され、それらの間でも一貫して動作するアプリケーションを構築するために、「最小公分母」アプローチを取らざるを得なくなります。これは、他のネイティブ アプリケーションと比較して一貫したユーザー エクスペリエンスを提供できない可能性があるため、特定のレベルの機能を期待する一部のユーザーには適していない可能性があります。
これは、クロスプラットフォーム アプリケーション開発における長年の問題です。各システムの設計哲学と動作は意図的に異なっています (そうでなければ、なぜそれらを使用するのでしょうか?)。それらすべてで同じです。
過去にクロスプラットフォーム開発を行ったことがある者として、場合によってはそれをうまく行うことができますが、Adobe AIR のようなものを使用することは、特定のプラットフォームに慣れるための良い手段かもしれませんが、多くの場合、多くの場合、クロスプラットフォーム ソリューションでシステムのネイティブ ライブラリ/言語を使用してアプリを構築する方が賢明です。