JavaScriptを使用してネイティブデバイスAPIにアクセスするには、PhoneGapのようなツールを使用します。これらのAPIにアクセスする必要がない場合は、HTML5アプリを作成して「ホーム画面に追加」などを使用してインストールできます。
HTML5が成熟するにつれ、デバイスAPIはますますHTML5 GPSなど)を使用しているため、アクセスを希望するものに応じて、Device APIの一部になる予定です。
追記どこでも
あなたがプロセスをインストールし、特定のデバイスを介して複数のプラットフォームにデプロイすることができます別のフレームワークがあります実行します。これらのツールは通常2つの方法で動作します。組み込みブラウザで実行するか、ネイティブコードにコンパイルします。
PhoneGapは、埋め込みブラウザでアプリケーションのHTML5部分を実行します。 MonoTouchのような他のツールは実際にはネイティブコードにクロスコンパイルされるため、ベアメタル上で実行されます。 HTML5
を使用して
クロスプラットフォームあなたはHTML5を使ってモバイルアプリを作るために使用できるフレームワークがたくさんあります。これらは通常、アプリを「ネイティブ感覚」にするのに役立ち、さまざまなデバイスで異なるデバイス固有のイディオムを抽象化します。
Sencha Touch,JQuery Mobileおよびa bunch of othersがあります。
ユーザーにAppStore/Marketなどを通じてアプリケーションをインストールさせたい場合は、PhoneGapのようなソリューションが適しています。あなたは、あなたのアプリを書いて、
<meta name="apple-mobile-web-app-capable" content="yes">
のようにメタタグを追加し、ホーム画面に追加したときに、それだけで、他のアプリのように見えるし、組み込みブラウザで実行されますことを気にしないのであればHTML5を使用してオフライン機能を追加したり、HTML5を使用するだけでユーザーがオンラインになったときに同期させることができます。
Sencha touch app galleryをご覧になり、この技術の可能性をご覧ください。