35

携帯電話の画面がオフのときでも動作する HTML5 地理位置情報ベースの Web アプリの作成に興味があります (たとえば、携帯電話がポケットに入っているときにどれだけ走ったかを追跡します)。

アプリを実行したまま画面をオフにしたり、他のアプリの使用中にアプリをバックグラウンドで実行したりする方法はありますか? これは、少なくともいくつかの一般的なモバイル デバイス (特に新しい iOS および Android デバイス) で可能ですか?

4

2 に答える 2

27

私の音楽アプリは HTML5 で、バックグラウンドでも実行する必要があります。そのサポートは、モバイル ブラウザによって異なります。

  • iOS の Safari: バックグラウンドで 1 つか 2 つの曲を再生し続けます
  • Android のネイティブ ブラウザ: 1 曲再生してから停止します
  • Android 上の Firefox: 画面がロックされるか、ブラウザーがフォーカスを失うか、曲が終わると停止します
  • Android の Dolphin: バックグラウンドで再生します! しかし、最終的に停止します
  • Android 上の Opera: バックグラウンド サポートの向上。画面がオフになっていても、Opera がバックグラウンドに送信されていても、Javascript は引き続き実行され、音楽は再生され続けますが、最終的に数曲後に停止します。

ご覧のとおり、ヒットまたはミスです。半分の時間、私は誤って押してしまうまで携帯電話を後ろ向きにポケットに入れようとし、スクリーンをつけたままにしようとします - 完全に最悪です. バックグラウンドでの HTML5 アプリの実行をユーザーがより細かく制御できる日が待ち遠しいです。私が推測しなければならないのは、それが牽引されたとしても、それに対する普遍的なサポートは非​​常に遠いと言うでしょう. Apple が決して承認しないだろうとほぼ確信しているにもかかわらず、私はネイティブ アプリ ソリューションを強制されています。それまでの間、私は希望を持ち続け、最新のモバイル ブラウザーをテストし続けます。それが実際に起こったら、それは素晴らしいことになるからです。:-)

また、私の経験では、上記のほとんどすべての組み合わせで、HTML5 を使用して JavaScript を実行し、ネットワーク データを取得し、音楽を再生すると、通常、携帯電話がオーブンのようになり、バッテリーがすぐになくなります。うぐ。

さらに、jQuery Mobile を使用している場合 (これはたいてい素晴らしいものです)、ブラウザーごとに異なるタッチ処理が表示されます。たとえば、Firefox のタッチはうまく機能しますが、Dolphin は最悪で、正確にタッチして押したまま離す必要があります。それは直接 HTML5 のせいではありませんが、私が扱っている別の問題です。

モバイル HTML5 に関する別の開発者の興味深い考えを次に示します。

更新: 2013 年 5 月 22 日、Samsung Galaxy S3 に Opera をダウンロードしましたが、これまでで最高の HTML5 サポートを備えています。私のアプリでは、画面がオフになっていても、Opera がバックグラウンドにプッシュされていても、少なくとも数曲はバックグラウンドで JavaScript を実行し続けます。

于 2013-05-08T13:56:44.607 に答える