💡
この章で話すこと
- モバイルアプリの特徴について
モバイルアプリとは
iOSやAndroidなどモバイルOS上で動くアプリケーションのこと
Webアプリとの違い
特徴 | モバイルアプリ(ネイティブ) | Webアプリ |
---|---|---|
定義・概要 | 特定のOS(iOS, Androidなど)上で直接動作するように開発されたアプリケーション | Webブラウザを通じて利用するアプリケーション |
動作環境 | 特定のOSがインストールされたスマートフォンやタブレット | インターネット接続とWebブラウザがある環境(OSに依存しない) |
配布・インストール方法 | アプリストア(App Store, Google Playなど)からダウンロードしてインストールが必要 | URLにアクセスするだけで利用可能(インストール不要) |
パフォーマンス | OSに最適化されており、一般的に高速でスムーズな動作が期待できる | 一般的にネイティブアプリより劣る場合がある(ブラウザの制約を受ける) |
デバイス機能へのアクセス | OSの提供する全ての機能(カメラ、GPS、プッシュ通知、連絡先など)にアクセス可能 | 一部の機能(カメラ、GPSなど)にはアクセス可能だが、制限がある |
オフライン利用 | オフラインでも利用可能な機能を実装しやすい | 基本的にオンラインでの利用が前提(PWAなど一部オフライン対応可能な技術もある) |
解像度 |
端末によって解像度
がバラバラ
◦ HD(1280x720)から8Kなど幅広い ◦ 縦横比も16:9、19.5:9、21:9など ◦ 縦持ちと横持ち、折りたたみ | ウィンドウサイズによって変わる |
バッテリー |
バッテリー
効率が重要
◦ 省電力設計が必須 | |
ストア審査 | アプリストアの審査が必要(リジェクトされる可能性もある) | 不要(Webサイトとして公開) |
メリット |
・OSに最適化されており、デバイスの機能を最大限に活用できる
・オフラインでも利用しやすい ・アプリストアでの露出が期待できる |
・OSに依存せず、多くのデバイスで利用可能
・インストール不要ですぐに使える ・アップデートが容易 |
デメリット |
・OSごとに開発が必要な場合、開発コストや期間が増加
・アプリストアの審査が必要 ・ユーザーによるインストール・アップデートが必要 |
・ネイティブアプリに比べてパフォーマンスが劣る場合がある
・デバイス機能へのアクセスに制限がある ・オフライン利用に弱い |
モバイルアプリの仕様
上記の特徴から、モバイルアプリは以下のように動作する
-
OSがアプリの動作を管理する
- 予め許可した パーミッション の範囲でしか動作できない
-
自動的に
リソースを解放
し、RAM(メモリ)を空ける
- OSが勝手に画面用データを消したり、プロセスごとKillしたりする
- バックグラウンド動作を制限 する
-
OSが柔軟な
レイアウトシステム
を持っている
- 画面サイズの変化に対して柔軟なレイアウト
- 言語・解像度などに応じた切り替えシステムも持っている
💡
まとめ
- モバイルアプリは、Webアプリと比較して、高いパフォーマンスとデバイス機能へのより詳細なアクセスが可能
- アプリストアを通じた配布が必要で、審査プロセスがある
- OSによる厳密な管理下で動作し、パーミッションやリソース管理の制約を受ける
- 多様な画面サイズ・解像度に対応する柔軟なレイアウトシステムを備える
- バッテリー効率と省電力設計が重要な考慮事項