Androidでのプログレッシブウェブアプリの機能とネイティブアプリ、またはその逆の機能[終了]


112

2015年、GoogleはAndroid向けのWebアプリを開発するための新しいアプローチ、プログレッシブWebアプリを導入しました。ネイティブアプリケーションのように見えるアプリケーションを作成し、カメラや加速度計などのデバイスのハードウェアを使用したり、プッシュ通知を受信したり、ランチャーアイコンを表示したり、オフラインで作業したり、ローカルデータを保存したりできます。

Androidでは、ネイティブアプリが提供する機能のうち、プログレッシブウェブアプリがサポートしていない機能、およびその逆の機能はどれですか。

回答:


201

TL; DR-2017年2月現在、プログレッシブウェブアプリは、 TwitterがすべてのモバイルウェブトラフィックをReact PWAに移動し

2016年8月の時点で、プログレッシブウェブアプリは実際に考えられているよりも多くのハードウェアアクセスを提供しています。AndroidのChrome 52安定版のwhatwebcando.todayのスクリーンショットは次のとおりです。

今日のWebでできること-Android上のChrome 52

ハードウェアアクセスに含まれるもの

今後のハードウェアアクセス

これらの機能は実装されているか、一部のブラウザーで既に機能しています。

注意すべきもう1つの重要な点は、Origin Trials Framework( Chromeに実装されている)を使用すると、メーカーは標準化プロセスを実行しなくても、ハードウェア(またはソフトウェア)機能を公開およびテストできるようになります。たとえば、電話メーカーは、圧力センサーの値を読み取るためのAPIを公開し、それを改良してから、W3Cへの検討のために提出できます。

ハードウェアアクセスに加えて、ネイティブアプリで従来採用されていたソフトウェア機能もあり、現在はWebアプリで利用できます。

PWAも使用できる従来のネイティブ機能

これらの機能は多くのユースケースに対応しており、現在人気のあるネイティブアプリの多くはPWAとして書き直すことができます。Slackを例にとります。オープンソースの代替であるRocket.Chatは、PWAバージョンを構築しています。その他のPWAデモについては、https: //pwa.rocksを参照してください

PWAに搭載されるネイティブのような機能

PWAがまだ利用できないネイティブAndroid機能

  • 指紋センサーへのアクセス(開発中
  • 連絡先、カレンダー、ブラウザのブックマークへのアクセス(これらへのアクセスの欠如は機能として表示される可能性があります、プライバシーを意識したユーザーによるます)
  • 警報
  • テレフォニー機能-SMSまたは通話の傍受、SMS / MMSの送信、ユーザーの電話番号の取得、ボイスメールの読み取り、ダイヤラダイアログなしでの通話
  • 一部のハードウェア機能とセンサーへの低レベルのアクセス:懐中電灯、大気圧センサー
  • システムアクセス:タスク管理、システム設定の変更、ログ

プログレッシブウェブアプリは、ネイティブアプリにはない機能を提供します

  • 発見可能性 -プログレッシブウェブアプリのコンテンツは検索エンジンで簡単に見つけることができますが、StackOverflowなどのコンテンツ中心のネイティブアプリは、「pwa vs.ネイティブ」などのアクセスを提供するコンテンツのアプリストア検索結果には表示されません。これは、多数のサブコミュニティを個別の「アプリ」としてアプリストアに公開できないRedditなどのコミュニティの問題です。
  • リンク可能 -どのページ/画面にも直接リンクがあり、簡単に共有できます
  • ブックマーク機能 -そのリンクを保存して、アプリのビューに直接アクセスします
  • 常に新鮮 -更新をプッシュするためにアプリストアを経由する必要はありません
  • ユニバーサルアクセス -アプリストアの影響を受けない場合がある任意のポリシーまたは(意図しない)地理的制限
  • 大量のデータの節約。インターネットアクセスが高価または低速な新興市場では非常に重要です。たとえば、eコマースのウェブサイトであるKonga は、PWAに移行することで、最初の読み込み時のデータ使用量を92%削減しました
  • 配布の摩擦が少ない -プログレッシブウェブアプリがオンラインの場合、Android(およびその他のモバイル)ユーザーはすでにアクセスできます。

最後の注意:PWAは、デスクトップとほとんどのモバイルデバイスで同じコードベースで実行されます。デスクトップ環境(ChromeOS、およびそれ以降の MacとWindows)では、他のアプリと同じように起動され、通常のアプリウィンドウ(ブラウザータブなし)で実行されます。


1
ちなみに、「Androidインスタントアプリ」を使用すると、ネイティブアプリ(少なくともAndroidの場合)にはリンク性が欠けていないと主張できます。
shawnjan

ダン、いい答えだ!PWAがホストデバイスの電話番号にアクセスする方法はありますか?
Alexander Mills

@Alexander:いいえ(「テレフォニー機能」の箇条書きを参照)。プライバシーの侵害となるためです。代わりに自動入力の使用を検討してください
Dan Dascalescu 2018


12

ネイティブアプリケーションの主な利点は、プラットフォームが提供できるすべてのネイティブAPI(連絡先、カメラフラッシュ、SMS、テレフォニー、ネットワーク、Bluetooth、センサー、RAWソケット...)にアクセスできる一方で、プログレッシブWebアプリケーションは(まだ)アクセスできないことです。標準Web機能による制約があるためです。

プログレッシブWebアプリケーションの目標は、これらの機能を拡張して最も重要なケースをカバーすることです。この気分で、プログレッシブWebアプリケーション:プログレッシブWebアプリケーションが提供する必要があるもののリストを見つけることができる、私たちの魂を失うことなくタブをエスケープするを見てください。

  • 対応:あらゆるフォームファクターに適合
  • 接続に依存しない:Service Workersを段階的に強化し、オフラインで作業できるようにします
  • アプリのようなインタラクション:シェル+コンテンツアプリケーションモデルを採用して、楽しいナビゲーションとインタラクションを作成します
  • フレッシュ:サービスワーカーの更新プロセスにより、透過的に常に最新の状態に
  • 安全:スヌーピングを防ぐためにTLS(サービスワーカーの要件)を介して提供されます
  • 検出可能:W3Cマニフェストとサービスワーカーの登録スコープにより、検索エンジンがそれらを見つけることができるため、「アプリケーション」として識別可能
  • 再利用可能:OSの再利用UIにアクセスできます。例:プッシュ通知
  • インストール可能:ブラウザーが提供するプロンプトを介してホーム画面に移動し、ユーザーがアプリストアの手間をかけずに最も役立つアプリを「維持」できるようにします
  • リンク可能:摩擦がなく、インストールが不要で、簡単に共有できます。URLの社会的力は重要です。

これらの点から、リンク可能は、モバイルアプリケーションのディープリンクの形でOpen Webからネイティブアプリケーションによってインポートされた最初の特性の1つでした。

しかし、特筆に値するのは、フレッシュ + インストール可能組み合わせです。これは、ネイティブの選択肢に勝るプラットフォームとしてのWebの主な利点の1つであるためです。ここにインストール可能とは、ホーム画面に表示されることを意味します。ダウンロードとインストールの段階を通過する必要があるという意味ではありません。ブラウジング中にURLを開くか、サービスを発見すると、それが完了しますホーム画面に表示されます

新鮮なとは、通常のWebがどのように機能するかを指し、瞬時のロードとシームレスな更新を提供します。YouTubeのウェブからアップデートをインストールするように求められることはありません。アップデートはデプロイされ、次にアクセスしたときにそれを使用します。

あなたは違いを求めていたので、残りのポイントの利点については話していません。たとえば、再エンゲージメントは、ネイティブアプリケーションがプッシュサービスと通知を介してすでに持っているものであり、今ではWebアプリケーションが追いついています。

他の関連する重要な質問は、どのプラットフォームがニーズにより適しているかについてです。特別なハードウェア機能にアクセスしていない場合は、Webで十分です。市場や独自のエコシステムから解放されたWebを選択すれば、ある程度のユビキタス性と相互運用性を確保できます。

最後に、Chrome搭載の携帯電話からwww.flipkart.comを閲覧することをお勧めします。バグはなく、スムーズなナビゲーション、アプリのような感覚です。オフラインにすると、引き続き機能します。その投稿の本当に現実的な例。アプリをホーム画面に追加すると、次にアプリを開いたときに、エクスペリエンスがさらに向上します。

Firefox OSと、標準のWeb により多くのプラットフォームAPIを導入する例を見てみましょう(多少の成功はあります)。


PWAは実際にカメラやいくつかのセンサーにアクセスできます。
Dan Dascalescu
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.