プラットフォーム

Drupal モバイル アプリ: 入手する 4 つの方法と比較

Drupal モバイル アプリへの 4 つのルート (PWA、Web サイトからアプリへのコンバーター、分離された JSON:API ビルド、マネージド サービス) を SSO テスト計画と比較します。

地域図書館の机で電話を見ている高齢の訪問者とボランティアの切り絵コラージュ

Drupal サイトは 4 つの方法でモバイル アプリにすることができます。プログレッシブ Web アプリとしてインストール可能にする、Web サイトからアプリへのコンバーターを使用してネイティブ シェル内にライブ サイトを読み込む、JSON:API で分離された別個のアプリを構築する、またはマネージド サービスまたは代理店にそれらのいずれかを依頼する方法です。ほとんどの Drupal チームにとって決定的な問題は、組織が既に管理しているフロント エンドの隣に 2 つ目のフロント エンドを実行する余裕があるかどうかです。

このガイドでは、SiteTo.App が間違った選択である場合も含めて 4 つのルートを比較し、シングル サインオン、プライベート ファイル、および言語の電話テスト計画を示します。短いバージョンについては、を参照してください。 Drupal からアプリページへ.

Drupal サイトにはアプリが必要ですか?

Drupal は、大学や議会の Web サイト、協会や会員のポータル、非営利リソース ライブラリ、イントラネット、ニュース サイト、Drupal Commerce ストアを運営しています。これらに共通するのは、特定の仕事をするために戻ってくる視聴者であり、多くの場合サインインしています。

製品を比較する前に、次の 3 つの質問をしてください。

  1. 毎週誰かがアプリで何をするでしょうか? 時刻表を確認したり、会員ニュースを読んだり、施設を予約したり、問題を報告したり、何かを更新したり、再注文したりできます。タスクに名前を付けることができない場合は、応答性の高いテーマで十分です。
  2. そのタスクはすでに電話で機能していますか? メンバーがダッシュボードにアクセスするためにメガ メニューを 7 回タップする必要がある場合、サイトから構築されたアプリがその操作の大部分を継承します。まずはテーマ内で修正してください。
  3. ストアの掲載情報自体に価値はありますか? 住民や学生は App Store や Google Play を名前で検索し、ホーム画面のアイコンの方がブックマークよりも戻りやすいです。

反復タスクのない情報のみのサイトは候補としては適していません。 Apple は、Web サイト以外の機能をほとんど追加しないアプリを拒否できる ガイドライン 4.2.

Drupal モバイル アプリを入手する 4 つの方法は何ですか?

ルートユーザーが得られるものチームが維持するもの典型的なコスト形状ストアリスト
プログレッシブウェブアプリあなたのサイト、ブラウザからホーム画面にインストール可能Drupal サイトとマニフェストとサービス ワーカー開発者の時間デフォルトではなし
ウェブサイトからアプリへのコンバーター (SiteTo.App)ライブ Drupal サイトをネイティブ シェルにロードするあなたの名前のアプリDrupal サイトプラットフォームごとに 1 回: Android は 29 ドル、iOS は 79 ドル、両方とも 99 ドルあなた自身のアカウントから
JSON:API 上の分離されたアプリiOS および Android 用に設計およびコーディングされた画面Drupal サイト、API コントラクト、アプリのコードベースプロジェクト予算と継続的なメンテナンスあなたまたはあなたの代理店のもの
マネージドアプリサービスまたは代理店プロバイダーによって異なります: WebView アプリまたはカスタム ビルド (チームが付属)Drupal サイトとベンダーの関係月額料金、年会費、またはプロジェクト料金プロバイダーによって異なります

独自のストア掲載情報を持つすべてのルートには開発者アカウントも必要です。Apple Developer Program は年間 99 ドル、Google Play は 1 回あたり 25 ドルで、Apple と Google に直接支払われます。

ルート 1: プログレッシブ Web アプリ

PWA は Web アプリ マニフェストと Service Worker をサイトに追加し、ユーザーがブラウザーからインストールできるようにします。貢献したのは プログレッシブ Web アプリ モジュール Drupal の基本を扱います。 iOS 16.4以降、iPhoneのホーム画面に追加されたWebアプリも ウェブプッシュを受信する.

ストアレビューもストア掲載もありません。 iPhone では、ユーザーは「共有」を使用してから「ホーム画面に追加」を使用することを知っておく必要があります。スタッフのイントラネットとしてはこれで十分です。私たちの比較 PWA、ネイティブ、WebView より深くなっていきます。

ルート 2: ウェブサイトからアプリへのコンバーター

SiteTo.App では、アプリはライブ Web サイトのネイティブ シェルです。アイコンと起動画面、ロゴ付きのネイティブ ヘッダー、サイド メニュー、下部タブ、スワイプ バック、プルして更新、および独自の Firebase プロジェクトを介したオプションのプッシュ通知が含まれます。内部のページは Drupal ページであり、Safari や Chrome と同じブラウザ エンジンである WebView にロードされます。

Drupal は引き続きすべてのページをレンダリングし、すべてのアクセス決定を行い、9:00 に公開されたノードは、新しいビルドなしで 9:00 の時点でアプリ内にあります。同じ設計から制限が生じます。つまり、アプリはモバイル テーマと同等の性能しかありません。私たちのガイド Web サイトをモバイル アプリに変換する 一般的なプロセスをカバーします。

モバイル開発者を含む Drupal チームは、ビルド パイプライン、署名証明書、毎年の SDK アップデートを所有する代わりに、Capacitor などのフレームワークを使用してこの種のシェルを社内で構築できます。

ルート 3: JSON:API 上の分離されたアプリ

JSON:API は Drupal コアの一部です、 分離された Drupal ガイド より広範なアプローチと、以下のような貢献モジュールをカバーしています。 シンプルなOAuth 認証されたリクエストを処理します。開発者は、コンテンツ バックエンドとして Drupal を使用して、Swift と Kotlin、または React Native または Flutter でアプリを作成します。

分離されたアプリは、オフラインで使用するためにコンテンツを保存したり、Bluetooth やバックグラウンドでの位置情報を使用したり、携帯電話用に設計された画面を表示したりするなど、Web サイトではできないことを実行できます。価格は2番目のフロントエンドです。各コンテンツ タイプには画面が必要であり、API を通じてロールとアクセス ルールが尊重される必要があります。 Web フォーム、翻訳、検索、コマース チェックアウトはそれぞれ構築し、サイトと歩調を合わせる作業です。

ルート 4: マネージド サービスまたは代理店

マネージド サービスは、アプリを構築して送信し、その背後にいるチームに定期的な料金を請求します。コンバーターとして同じ WebView アプローチを使用するものもありますが、 MobiLoudとの比較 その料金で何が買えるのかを示しています。 Drupal 代理店はルート 3 をプロジェクトとして提供することもできます。どちらも、ストアの提出物を誰も所有できない組織、または調達に契約サプライヤーが必要な組織に適しています。

どのルートがどの Drupal サイトに適合しますか?

あなたの状況最初に見るルート
スタッフのイントラネット。インストール方法を人々に示すことができますPWA
メンバー、学生、または居住者のポータルがすでに携帯電話で適切に機能しており、開発プロジェクトなしでストアの掲載情報が必要な場合ウェブサイトからアプリへのコンバーター
オフライン コンテンツ、Bluetooth、AR、またはバックグラウンド処理分離されたアプリ
社内にストアへの送信や返信のレビューを処理できる人は誰もいませんマネージドサービスまたは代理店
モバイルテーマが遅い、または扱いにくいまずはテーマを決めてから決める

SiteTo.App が Drupal サイトの選択として間違っているのはどのような場合ですか?

  • SSO プロバイダーが埋め込みブラウザをブロックしているため、他にサインインする方法がありません。 アプリはログイン画面を通過できません。以下のテスト計画では、これをすぐに見つけます。
  • オフラインのコンテンツが必要です。 アプリにはページを読み込むための接続が必要です。
  • ノードが公開されるとき、またはロールまたは言語によってターゲットを指定されるときにプッシュが自動的に送信されるようにしたい。 通知はダッシュボードからオプトインした全員に手動で送信されますが、セグメントやスケジュールはまだ設定されていません。
  • Web サイトに存在しない画面が必要です。 SiteTo.App はページの周囲にネイティブ ナビゲーションを追加し、デザインはそのままにします。
  • アプリを送信してレビュー担当者に回答するには、サプライヤーが必要です。 自分の Apple および Google アカウントから投稿し、すべての査読者メッセージを自分で読みます。
  • このサイトはまだ Drupal 7 を使用しており、固定幅のテーマを使用しています。 Drupal 7 は 2025 年 1 月にサポート終了になりました。サイトをより多くの人に公開する前に移行してください。

Drupal の機能は WebView アプリ内でどのように動作しますか?

Drupal テーマのほとんどは、携帯電話のブラウザで表示されるのとまったく同じようにレンダリングされます。これらは例外です。

シングルサインオン。 多くの Drupal サイトは、次のようなモジュールを使用して ID プロバイダーを通じて認証します。 OpenID コネクト, SAML認証 または CAS。ユーザーはサイトを離れ、別の場所にサインインして送り返されます。それがアプリ内で機能するかどうかはプロバイダーによって異なります。 Googleの OAuth ポリシー 埋め込み Web ビューでのサインイン画面は許可されません。管理対象デバイスまたは承認されたブラウザを必要とするエンタープライズ ポリシーは、同じ方法で Web ビューをブロックできます。標準の Drupal フォームは次のとおりです。 /user/login にはそのような依存関係はありません。

セッションの長さ。 Drupal のデフォルトのセッション Cookie は約 23 日間持続しますが、デフォルトのサーバー側設定では 2 日強未使用のまま放置されたセッションがクリアされる可能性があり、公共部門や大学のサイトではセキュリティが強化される可能性があります。 セッション処理 さらに遠く。短いセッションは共有デスクトップ上で健全です。個人の携帯電話では、人々がアプリに期待するよりもはるかに頻繁に再度サインインすることを意味します。の 永続的なログイン モジュールは、必要に応じて明示的な「私を忘れないでください」オプションを追加します。

プライベートファイル。 Drupal に保存されているドキュメント プライベートファイルシステム リクエストごとにアクセスをチェックできるように、Drupal を通じて提供されます。 PDF リンクがセッション Cookie を保持しない別のアプリまたはブラウザに渡された場合、Drupal は匿名の訪問者であると判断し、拒否します。

言語とドメイン。 Drupalの 言語モジュール URL プレフィックス、ドメイン、ユーザーのアカウント、またはブラウザから言語を選択できます。アプリは 1 つの開始 URL を開き、そのタブは固定パスを指します。あるサイト /en そして /fr 接頭辞には、タブがどの接頭辞を使用するかを決定する必要があり、他のすべての人に表示される言語スイッチャーが必要です。

Forms. 無地 ウェブフォーム フィールドは問題ありません。ファイルと写真のアップロード、保存された下書きを含む複数ステップのフォーム、および CAPTCHA チャレンジがテスト対象です。

オーバーレイと管理者ツールバー。 同意バナー、ニュースレターモーダル、スティッキーヘッダーは、アプリのネイティブヘッダーとタブが配置されるスペースを奪い合います。 SiteTo.App は、アプリ内で実行されるスクリプトを使用してサイト独自のヘッダーとポップアップを非表示にすることができるため、テーマは変更されず、キャッシュされたページは通常どおり提供されます。アプリにサインインした編集者には、引き続き Drupal の管理ツールバーが表示されます。

Drupalコマース。 商業 自分のページにカードフィールドを使用してチェックアウトするのは簡単なケースです。ホストされた支払いページにリダイレクトするゲートウェイには、それぞれテスト注文が必要です。

Accessibility. 公共機関や大学には通常、法的なアクセシビリティ義務があります。アプリ内のページはテーマが生成する HTML と同じであるため、そこですでに行われた作業が引き継がれます。ネイティブ ヘッダー、メニュー、タブは新しいインターフェイスなので、VoiceOver と TalkBack をテストするときにこれらを含めてください。

Drupal サイトをアプリとして段階的にテストするにはどうすればよいでしょうか?

実際の電話、本番サイトおよびテスト アカウントを 2 つまたは 3 つの役割として使用します。プレビューは無料でカードも必要ないため、料金を支払う前にプラン全体を実行してください。

ステップ 1: モバイルテーマを確認する

携帯電話のブラウザで最もアクセス数の多い 5 ページを開きます。テーブルとビューの横スクロール、画面を覆うメガ メニュー、閉じることのできない同意バナーを探してください。テーマ内で見つかったものを修正します。

ステップ 2: プレビューを作成する

パブリック URL を貼り付けます SiteTo.App、モバイル訪問者がアクセスする言語プレフィックスまたはドメインを使用します。アプリ名、アイコン、起動画面を設定し、ユーザーが繰り返すタスクのタブを選択します。メンバーシップ団体は、ホーム、ニュース、イベント、およびマイ アカウントを使用する場合があります。ライブ サイトのパス エイリアスから各リンクをコピーし、コードをスキャンして携帯電話でアプリを開きます。

HTTP 認証または IP ホワイトリストの背後にあるステージング サイトは電話機にロードできないため、このプランでは実稼働環境が使用されます。

ステップ 3: 最初にサインインを証明する

このテストはプロジェクトを決定するため、何よりも先に実行してください。

  1. 実際のユーザーと同じようにサインインします。それが SSO の場合は、MFA プロンプトを含む完全なラウンド トリップを完了します。
  2. 自分の役割だけが閲覧できるページを開きます。
  3. アプリを完全に閉じて、再度開きます。翌朝もう一度確認してください。
  4. サイトで Drupal パスワードを使用している場合は、リセットをリクエストしてください。通常、メール内のワンタイム リンクは携帯電話のブラウザで開くため、新しいパスワードがアプリで機能することを確認します。
  5. サインアウトして、制限されたページが拒否されていることを確認します。

SSO が失敗した場合は、ポリシーが埋め込みブラウザをブロックしているかどうか、またそれとともに Drupal パスワード ログインを提供できるかどうかをアイデンティティ チームに問い合わせてください。どちらも不可能な場合は、ここで停止して別のルートを検討してください。

ステップ 4: 制限されたコンテンツとプライベート ファイルを開く

サインインして、ロール制限されたノードとプライベート PDF を開きます。ファイルが表示され、元のページに戻れることを確認してください。サインアウトを繰り返し、Drupal が両方を拒否することを確認します。

ステップ 5: ビュー、検索、フォームを操作する

長いリストで公開フィルターまたはファセットを使用し、結果をページングします。サイト検索を実行します。次に、アップロード フィールドや CAPTCHA を含め、最も忙しい Web フォームを最初から最後まで送信し、確認メッセージと通知メールが届くことを確認します。

ステップ 6: 言語を切り替えて重複部分を探す

サイトのスイッチャーで言語を変更し、各タブをタップしてデフォルトの言語に戻すものをメモします。次に、メンバーおよび編集者としてタップして、2 番目のヘッダー、タブ上の同意バナー、またはコンテンツを押し下げている管理者ツールバーを探します。

ステップ 7: 決定する

エリアいつ通過するか
サインインMFA を含む実際のログイン方法が完了しました
セッションアプリを閉じて再度開いてもサインインしたままです
アクセス制限されたページとプライベート ファイルはサインインで開かれますが、サインアウトは拒否されます
ビューと検索フィルター、ファセット、ページングは​​親指 1 つで操作できます
ウェブフォームアップロードと CAPTCHA が完了し、確認が表示されます
言語タブは選択した言語のままになるか、フォールバックが受け入れられます
レイアウト1 つのヘッダー、1 つのメニュー、タブを覆うものは何もありません

Drupal のページの問題と SiteTo.App 設定のナビゲーションの問題を修正します。フォールバックなしでサインインが失敗した場合は、別のルートを選択する必要があります。

各ルートの料金はいくらですか?

SiteTo.App の料金はプラットフォームごとに 1 回です。Android の場合は 29 ドル、iOS の場合は 79 ドル、両方を一緒に購入した場合は 99 ドルです。 SiteTo.App サブスクリプションはありません。アイコンの変更など、その後の再構築は別途お見積りとなります。 Drupal でのコンテンツの公開と編集には再構築は必要ありません。の 価格ページ に詳細があり、 コストガイド より広い市場を比較します。

分離されたアプリは、Drupal と毎年の iOS および Android リリースに対応する必要があるため、開発プロジェクトの後にメンテナンスが行われます。マネージド サービスでは、アプリが稼働している限り、定期的な料金が発生します。

Apple の年間 99 ドルと Google の 25 ドルの登録は、ストアの掲載情報があるすべての路線に適用されます。非営利団体、認定教育機関、政府機関は Apple に 料金免除 無料アプリのみを配布し、Apple の他の条件を満たしている場合。

Drupal ベースのアプリを App Store や Google Play に公開するにはどうすればよいですか?

の ガイドを作成して公開する 完全なシーケンスを説明します。 Drupal サイトでは、ほとんどのサイトよりもいくつかの点が重要です。

組織独自の開発者アカウントを使用します。 リストに発行者として大学、評議会、協会が表示されるように、機関の正式な名前で登録します。 Apple は組織に D-U-N-S 番号を要求しますが、検証には時間がかかるため、早めに開始してください。

Builds. iOS ビルドは署名され、自分の Apple アカウントで TestFlight にアップロードされるため、Mac や Xcode は必要ありません (詳細はこちら)。 Android は、Google Play の AAB、または APK として提供されます。送信する前に、TestFlight ビルドでテスト計画を繰り返します。

査読者に道を与えてください。 アプリの便利な部分がログインの背後にある場合は、代表的な役割を持つデモ アカウントを作成し、その認証情報をレビュー ノートに記載します。 SSO と MFA に依存するアカウントでは、レビュー担当者が最初の画面で停止します。

Drupal のアップグレードを中心に計画を立てます。 によると、Drupal 10 は 2026 年 12 月 9 日にサポート終了となります。 コアリリーススケジュール。同じドメインとパス エイリアスを維持する Drupal 11 へのアップグレードには、新しいアプリをビルドする必要はありません。エイリアスが変更された場合は、リダイレクトを追加するか、タブのリンクを更新します。

Apple と Google が承認の決定を行いますが、その結果については誰も約束できません。の 出版ガイド リストとレビューをさらに詳しく説明します。

よくある質問

モジュールなしで Drupal Web サイトをモバイル アプリに変えることはできますか?

はい。 SiteTo.App などの Web サイトからアプリへのコンバーターは、テーマがすでにレンダリングしているページを読み込むため、インストールするモジュールや公開する API はありません。オプションの JavaScript SDK タブバッジの場合、共有シートとハプティクスは、テーマのライブラリを通じて添付できるスクリプトです。

SSO はアプリ内で機能しますか?

それはアイデンティティプロバイダーによって異なります。 Drupal 独自のログイン フォームはブラウザと同じように機能します。 SAML、OpenID Connect、および CAS ログインは、組み込みブラウザを制限する可能性のあるプロバイダーにリダイレクトされます。決定する前に、無料プレビューで MFA を含む完全なサインインを実行してください。

Drupal 10、Drupal 11、Drupal CMS では動作しますか?

はい。 SiteTo.App はパブリック URL から動作し、Drupal のバージョンに依存しないため、分離されたフロント エンドを含む、モバイル対応のパブリック Drupal サイトをプレビューできます。

Drupal はコンテンツが公開されたときにプッシュ通知をトリガーできますか?

今日のSiteTo.Appではそうではありません。タイトル、テキスト、オプションの画像、リンクを付けてダッシュボードから各通知を送信すると、オプトインした全員に通知が届きます。自動通知または役割ベースの通知が不可欠な場合は、分離されたビルドの方が適しています。

次のステップ

サインインテストから始めます。 Drupal URL を 無料プレビュー、携帯電話で開き、ユーザーと同じようにログインします。それがうまくいったら、残りの計画を実行します。の Drupal からアプリページへ には、承認する必要がある人と共有するための短いチェックリストがあります。

Web サイトをアプリとして見る

プラットフォームを選択する前に、エクスペリエンスをカスタマイズしてプレビューします。

プレビューを構築する

読み続けてください

すべてのガイド