Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
スマホアプリエンジニアでない方へ向けた、スマホアプリ開発に関連するトピック
Search
greendrop
December 14, 2024
Technology
0
160
スマホアプリエンジニアでない方へ向けた、スマホアプリ開発に関連するトピック
greendrop
December 14, 2024
Tweet
Share
More Decks by greendrop
See All by greendrop
GitHub Actions の設定を少しよくする
greendrop
0
19
リンクからモバイルアプリを起動する技術
greendrop
0
7
知っててうれしい SQL について
greendrop
0
210
知っててうれしい HTTP Cookie を使ったセッション管理について
greendrop
1
220
知っててうれしいリレーショナルデータベースについて
greendrop
0
190
知っててうれしい HTTP について
greendrop
0
250
知っててうれしい HTTP キャッシュについて
greendrop
0
240
知っててうれしい HTTP Cookie について
greendrop
0
220
知っててうれしいデータベースについて
greendrop
0
220
Other Decks in Technology
See All in Technology
How Do I Contact HP Printer Support? [Full 2025 Guide for U.S. Businesses]
harrry1211
0
120
What’s new in Android development tools
yanzm
0
340
Delegating the chores of authenticating users to Keycloak
ahus1
0
160
ネットワーク保護はどう変わるのか?re:Inforce 2025最新アップデート解説
tokushun
0
210
united airlines ™®️ USA Contact Numbers: Complete 2025 Support Guide
flyunitedhelp
1
420
american airlines®️ USA Contact Numbers: Complete 2025 Support Guide
supportflight
1
110
ビズリーチが挑む メトリクスを活用した技術的負債の解消 / dev-productivity-con2025
visional_engineering_and_design
3
7.9k
2025-07-06 QGIS初級ハンズオン「はじめてのQGIS」
kou_kita
0
170
いつの間にか入れ替わってる!?新しいAWS Security Hubとは?
cmusudakeisuke
0
140
DatabricksにOLTPデータベース『Lakebase』がやってきた!
inoutk
0
120
NewSQLや分散データベースを支えるRaftの仕組み - 仕組みを理解して知る得意不得意
hacomono
PRO
3
180
AWS CDK 開発を成功に導くトラブルシューティングガイド
wandora58
2
110
Featured
See All Featured
How GitHub (no longer) Works
holman
314
140k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
181
54k
Speed Design
sergeychernyshev
32
1k
Fireside Chat
paigeccino
37
3.5k
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
60k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Statistics for Hackers
jakevdp
799
220k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
5.9k
Transcript
スマホアプリエンジニアでない方へ向けた スマホアプリ開発に関連するトピック 2024/12/14 1
はじめに スマホアプリエンジニアでない方に向けて、スマホアプリ開発に関連 するトピックを紹介します。 iOS や Android のアプリ開発を実装しない方でも、スマホアプリにつ いての基本的な知識を理解できるようになることを目指します。 2
目次 スマホ・スマホアプリの状態 スマホアプリの画面遷移 スマホの通知 URL によるスマホアプリ起動 スマホアプリの審査 まとめ 3
スマホ・スマホアプリの状態 スマホアプリは、スマホなどの状態に応じて動作が異なることもあり ます。 そのため、スマホの状態について理解しておくことが重要です。 スマホ・スマホアプリの状態 4
スマホの状態 OS 状態 OS / バージョン 電源状態 オン / オフ
/ スリープ バッテリー状態 使用中 / 充電中 / 充電完了 / 低電力モード / バッテリー切れ 通信状態 Wi-Fi 接続 / モバイルデータ通信 / 機内モード / オフライン ストレージ状態 ストレージ容量 / 空き容量あり / 空き容量なし スマホ・スマホアプリの状態 - スマホの状態 5
スマホアプリの状態 インストール状態 未インストール / インストール済 実行状態 実行中( フォアグラウンド) / バックグラウンド実行
/ 停止(Kill) 更新状態 最新版 / アップデート可能 / アップデート不可 権限状態 必要な権限を付与 / 一部の権限を拒否 / すべての権限を拒否 データ状態 データが同期中 / データが非同期 / データが破損 エラー状態 クラッシュ / フリーズ / エラーメッセージが表示 スマホ・スマホアプリの状態 - スマホアプリの状態 6
スマホアプリの画面遷移 スマホアプリで次の画面へ遷移したり、前の画面に戻るような内容は スタックのような状態で管理されています。 画面遷移の仕組みを理解しておくことで、アプリの動作を理解しやす くなります。 スマホアプリの画面遷移 7
スマホアプリの画面遷移 操作 スタック状態 画面 A を表示 画面 A から画面 B
に遷移 スマホアプリの画面遷移 8
スマホアプリの画面遷移 操作 スタック状態 画面 A から画面 B に遷移し、 画面 C
に遷移 画面 A から画面 B に遷移し、 画面 C に遷移した後、1 つ戻る スマホアプリの画面遷移 9
スマホアプリの画面遷移 操作 スタック状態 画面 A から画面 B に遷移し、 画面 C
に遷移した後、 前画面に戻らない状態の画面 D に遷移 スマホアプリの画面遷移 10
スマホの通知 スマホアプリでは、通知を利用してユーザーに情報を伝えることがで きます。 通知は、アプリがバックグラウンドで動作している場合でも、ユーザ ーに情報を伝えることができます。 スマホの通知 11
通知方法 ローカル通知 スマホアプリ自体で即時または決められた時間に通知を表示できる 決められた時間に通知する場合、その設定でメッセージも指定する ため、柔軟にメッセージを変更はできない オフラインでも通知を表示できる サーバーが不要 スマホの通知 - 通知方法
- ローカル通知 12
通知方法 プッシュ通知 サーバーから通知内容を受け取り、通知を表示できる サーバーから通知内容を送信するため、柔軟にメッセージ・タイミ ングを変更できる iOS: Apple Push Notification service
(APNs) 、Android: Firebase Cloud Messaging (FCM) で送信する FCM 経由で APNs へ送信することも可能 通知を表示する「通知メッセージ」とデータのみの「データメッセ ージ」に分かれる 通知 - 通知方法 - プッシュ通知 13
通知メッセージ バックグラウンド実行・停止(Kill ) 受け取った通知内容をもとに通知が表示される フォアグラウンド 自動で通知は表示されない スマホアプリで通知を受け取ったことを検知し、ローカル通知に より通知を表示できる 通知 -
通知方法 - プッシュ通知 - 通知メッセージ 14
データメッセージ データを受け取り、スマホアプリにて処理を行うことができる FCM 経由で APNs に送信した場合、サイレントプッシュ通知として 扱われる 実行可能時間は 30 秒
ユーザーによって明示的に停止(Kill )されていなければ実行可 能 通知 - 通知方法 - プッシュ通知 - データメッセージ 15
URL によるスマホアプリ起動 Web サイトやメール文章のリンクからスマホアプリを起動できます。 スマホアプリを起動するための URL スキームや Universal Links につ
いて理解しておくことで、スマホアプリの利便性を向上させることが できます。 URL によるスマホアプリ起動 16
Custom URL Scheme myapp::// のようにスマホアプリ独自の URL スキームが設定できる その URL スキームを指定したリンクを作成しそれをクリックする
と、そのスマホアプリが起動する スマホにアプリがインストールされていない場合、何も動作しない 自由に設定できるため、乗っ取り攻撃のセキュリティーリスクがあ る URL によるスマホアプリ起動 - Custom URL Scheme 17
Universal Links (iOS) https://myapp.example.com のような特定の URL でスマホアプリが 起動できる https://myapp.example.com/.well-known/apple-app-site-association に設定を記載したファイルを配置しなければならない
URL によるスマホアプリ起動 - Universal Links (iOS) 18
App Links (Android) https://myapp.example.com のような特定の URL でスマホアプリが 起動できる https://myapp.example.com/.well-known/assetlinks.json に設定を記
載したファイルを配置しなければならない URL によるスマホアプリ起動 - App Links (Android) 19
サードパーティのサービス サードパーティのサービスを利用することで、スマホアプリ起動の URL が用意できます。 また、スマホアプリがインストールされていない場合は App Store, Play Store を開くことができます。
Firebase Dynamic Links (2025/08/25 サービス終了) Adjust AppsFlyer Branch Kochava URL によるスマホアプリ起動 - サードパーティのサービス 20
URL によるスマホアプリ起動時に特定の画面に遷移 URL にパスやパラメータを付与することで、スマホアプリ起動時に特 定の画面に遷移できます。 スマホアプリの起動時に特定の画面に遷移することで、ユーザーにと って使いやすいアプリになります。 このように遷移させる場合、スマホアプリ側で URL のパスやパラメー
タを解析し、遷移先の画面を表示する処理を実装する必要がありま す。 URL によるスマホアプリ起動 - URL によるスマホアプリ起動時に特定の画面に遷移 21
スマホアプリの審査 App Store (iOS), Play Store (Android) にスマホアプリを公開する場 合、審査が必要です。 審査を通過するためには、各ストアのガイドラインに従い、アプリの
品質を高めることが重要です。 審査には時間がかかることもあるため、公開予定日の数日前に提出す ることが望ましいです。 また、審査で問題があった場合は、修正して再提出できます。 スマホアプリの審査 22
審査期間 App Store (iOS) 1 〜2 日程度 以下のような場合、審査期間が長引くこともある 初回提出 大きなアップデート
審査項目への違反 審査の混雑 スマホアプリの審査 - 審査期間 App Store (iOS) 23
審査期間 Play Store (Android) 1 〜2 日程度 以下のような場合、審査期間が長引くこともある アプリの複雑さ 審査状況
スマホアプリの審査 - 審査期間 Play Store (Android) 24
まとめ スマホの状態とスマホアプリの状態は、アプリの動作に影響を与え る スマホアプリの画面遷移は、スタックのような状態で管理されてい る 通知は、ローカル通知とプッシュ通知がある URL によるスマホアプリ起動は、Custom URL Scheme,
Universal Links, App Links などがある スマホアプリの審査は、App Store (iOS), Play Store (Android) で公 開する際に必要 まとめ 25
ご清聴ありがとうございました。 26