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
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
27k
「クラウドコスト絶対削減」を支える技術—FinOpsを超えた徹底的なクラウドコスト削減の実践論
delta_tech
4
170
Tokyo_reInforce_2025_recap_iam_access_analyzer
hiashisan
0
190
How Do I Contact HP Printer Support? [Full 2025 Guide for U.S. Businesses]
harrry1211
0
120
生まれ変わった AWS Security Hub (Preview) を紹介 #reInforce_osaka / reInforce New Security Hub
masahirokawahara
0
480
ビズリーチが挑む メトリクスを活用した技術的負債の解消 / dev-productivity-con2025
visional_engineering_and_design
3
7.7k
KubeCon + CloudNativeCon Japan 2025 Recap
ren510dev
1
390
SEQUENCE object comparison - db tech showcase 2025 LT2
nori_shinoda
0
150
united airlines ™®️ USA Contact Numbers: Complete 2025 Support Guide
flyunitedhelp
1
340
第4回Snowflake 金融ユーザー会 Snowflake summit recap
tamaoki
1
290
MobileActOsaka_250704.pdf
akaitadaaki
0
130
AI時代の開発生産性を加速させるアーキテクチャ設計
plaidtech
PRO
3
160
Featured
See All Featured
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.9k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.9k
Building an army of robots
kneath
306
45k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
60k
Git: the NoSQL Database
bkeepers
PRO
430
65k
A better future with KSS
kneath
238
17k
Rebuilding a faster, lazier Slack
samanthasiow
82
9.1k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
8
690
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
50
5.5k
4 Signs Your Business is Dying
shpigford
184
22k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
107
19k
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