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
190
スマホアプリエンジニアでない方へ向けた、スマホアプリ開発に関連するトピック
greendrop
December 14, 2024
Tweet
Share
More Decks by greendrop
See All by greendrop
GitHub Actions の設定を少しよくする
greendrop
0
23
リンクからモバイルアプリを起動する技術
greendrop
0
11
知っててうれしい SQL について
greendrop
0
260
知っててうれしい HTTP Cookie を使ったセッション管理について
greendrop
1
260
知っててうれしいリレーショナルデータベースについて
greendrop
0
220
知っててうれしい HTTP について
greendrop
0
280
知っててうれしい HTTP キャッシュについて
greendrop
0
280
知っててうれしい HTTP Cookie について
greendrop
0
260
知っててうれしいデータベースについて
greendrop
0
260
Other Decks in Technology
See All in Technology
re:Inventに行くまでにやっておきたいこと
nagisa53
0
1.1k
データとAIで明らかになる、私たちの課題 ~Snowflake MCP,Salesforce MCPに触れて~ / Data and AI Insights
kaonavi
0
330
AI-ready"のための"データ基盤 〜 LLMOpsで事業貢献するための基盤づくり
ismk
0
120
kotlin-lsp の開発開始に触発されて、Emacs で Kotlin 開発に挑戦した記録 / kotlin‑lsp as a Catalyst: My Journey to Kotlin Development in Emacs
nabeo
2
340
進化する大規模言語モデル評価: Swallowプロジェクトにおける実践と知見
chokkan
PRO
3
470
ubuntu-latest から ubuntu-slim へ移行しよう!コスト削減うれしい~!
asumikam
0
110
CloudComposerによる大規模ETL 「制御と実行の分離」の実践
leveragestech
0
190
AIでデータ活用を加速させる取り組み / Leveraging AI to accelerate data utilization
okiyuki99
6
1.8k
設計は最強のプロンプト - AI時代に武器にすべきスキルとは?-
kenichirokimura
1
140
龍昌餃子で理解するWebサーバーの並行処理モデル - 東葛.dev #9
kozy4324
1
110
プロダクト開発と社内データ活用での、BI×AIの現在地 / Data_Findy
sansan_randd
1
830
Snowflakeとdbtで加速する 「TVCMデータで価値を生む組織」への進化論 / Evolving TVCM Data Value in TELECY with Snowflake and dbt
carta_engineering
0
160
Featured
See All Featured
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.3k
What's in a price? How to price your products and services
michaelherold
246
12k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
Writing Fast Ruby
sferik
630
62k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
RailsConf 2023
tenderlove
30
1.3k
Into the Great Unknown - MozCon
thekraken
40
2.1k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.2k
Raft: Consensus for Rubyists
vanstee
140
7.2k
Fireside Chat
paigeccino
41
3.7k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.7k
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