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
[potatotips #69] Wi-Fi Suggestion API / Wi-Fi S...
Search
syarihu
April 27, 2020
Technology
2
2.2k
[potatotips #69] Wi-Fi Suggestion API / Wi-Fi Suggestion API
potatotips #69で発表したWi-Fi Suggestion APIの発表資料です。
https://potatotips.connpass.com/event/171532/
syarihu
April 27, 2020
Tweet
Share
More Decks by syarihu
See All by syarihu
Recap #io25 What's new in Google Play
syarihu
0
48
[DroidKaigi 2024] Android ViewからJetpack Composeへ 〜Jetpack Compose移行のすゝめ〜 / From Android View to Jetpack Compose: A Guide to Migration
syarihu
4
3.7k
[shibuya.apk #46] Composableの枠を超えてアニメーションする / Animation beyond Composable
syarihu
0
55
[shibuya.apk #41] Jetpack Composeでグリッドに柔軟にスペースを入れたい
syarihu
0
3.3k
[DroidKaigi 2022] 詳解Google Playの新しい定期購入 ~オファーの活用や実装例を添えて~
syarihu
0
3.6k
5分で分かるGoogle Playの新しいサブスクリプション / Google Play new subscription 2022
syarihu
1
1.8k
[DroidKaigi 2021] Google Play 定期購入 比例配分モード完全攻略ガイド / Google Play Subscription Proration Mode Complete Guide
syarihu
1
7.8k
[Money Forward Tech Drive] What's new in Google Play [Recap #io21]
syarihu
0
590
[Android 11 Meetups] Google Play Commerce からのアップデート / Android 11 Meetups Google Play Commerce
syarihu
4
2.9k
Other Decks in Technology
See All in Technology
FAST導入1年間のふりかえり〜現実を直視し、さらなる進化を求めて〜 / Review of the first year of FAST implementation
wooootack
1
120
公開初日に個人環境で試した Gemini CLI 体験記など / Gemini CLI実験レポート
you
PRO
3
320
Snowflake のアーキテクチャは本当に筋がよかったのか / Data Engineering Study #30
indigo13love
0
250
DatabricksのOLTPデータベース『Lakebase』に詳しくなろう!
inoutk
0
110
OpenTelemetry の Log を使いこなそう
biwashi
5
990
Talk to Someone At Delta Airlines™️ USA Contact Numbers
travelcarecenter
0
170
会社もクラウドも違うけど 通じたコスト削減テクニック/Cost optimization strategies effective regardless of company or cloud provider
aeonpeople
2
160
AI駆動開発 with MixLeap Study【大阪支部 #3】
lycorptech_jp
PRO
0
200
AI工学特論: MLOps・継続的評価
asei
10
1.5k
AIを使っていい感じにE2Eテストを書けるようになるまで / Trying to Write Good E2E Tests with AI
katawara
3
1.6k
2025-07-25 NOT A HOTEL TECH TALK ━ スマートホーム開発の最前線 ━ SOFTWARE
wakinchan
0
110
TROCCO今昔
gtnao
0
210
Featured
See All Featured
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
130
19k
Thoughts on Productivity
jonyablonski
69
4.7k
The World Runs on Bad Software
bkeepers
PRO
70
11k
Art, The Web, and Tiny UX
lynnandtonic
301
21k
Into the Great Unknown - MozCon
thekraken
40
1.9k
4 Signs Your Business is Dying
shpigford
184
22k
Done Done
chrislema
184
16k
Scaling GitHub
holman
461
140k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Designing for humans not robots
tammielis
253
25k
Balancing Empowerment & Direction
lara
1
490
Transcript
Wi-Fi Suggestion API 2020/04/27 (Mon) potatotips #69 @syarihu
Taichi Sato (@syarihu) • Money Forward, Inc. ◦ Android Engineer
• TechBooster
Android 10以前のWi-Fi関連API
• Androidでは、API Level 1からWi-Fi情報を追 加するAPIを用意している • イベント専用のアプリや実店舗などで使えるア プリでユーザーがWi-Fi情報を入力することなく イベント会場や店舗のWi-Fiに自動で接続でき る
Android 10以前のWi-Fi関連API
None
None
• Wi-FiがONで対象のSSIDが接続範囲内にい れば、保存されたWi-Fi情報を元に自動でWi-Fi に接続 • アプリを削除した場合はアプリから追加した Wi-Fi情報も同時に削除される Android 10以前のWi-Fi関連API
• Android 10以前で使えていた機能を提供する Wi-Fi関連APIは非推奨になった上に無効化さ れた Android 10以前のWi-Fi関連API
https://developer.android.com/reference/android/net/wifi/WifiManager#addNetwork(android.net.wifi.WifiConfiguration)
https://developer.android.com/reference/android/net/wifi/WifiManager#addNetwork(android.net.wifi.WifiConfiguration)
• プリインストールアプリなどを除いて minSdkVersion 29以上は2020年現在ではあり えない • Android 10以上では新しいAPIを使い、Android 10未満では以前のAPIを使って下位バージョンで も正しく動作させる必要がある
Android 10以前のWi-Fi関連API
Wi-Fi Suggestion API
• 接続先候補としてWi-Fi情報をシステムに追加 し、ユーザーにWi-Fiへの接続を提案するAPI • ネットワークの種類はオープン、WPA2、WPA3 のいずれかの認証情報を提供できる Wi-Fi Suggestion API
None
• サイレント通知であるため通知音は鳴らない • 通知の「はい」ボタンを押すと自動接続が許可さ れ、Wi-Fiが接続範囲内に入ったときに自動的に 接続される Wi-Fi Suggestion API
None
単なる接続確認ではない Wi-Fi接続のおすすめ通知
None
• 「いいえ」を押すと、アプリのもつWi-Fiの管理権 限が無効になり、Wi-Fi情報も削除される • Wi-Fiの管理権限が無効になると、アプリから変 更ができなくなるため、再度Wi-Fi情報を追加す ることができない 「いいえ」を押したときの挙動
• ユーザーが明示的に権限を許可するまでこの状 態は変わらない 「いいえ」を押したときの挙動
None
None
• 「いいえ」を押してもWi-Fiの管理の権限が無効 になったことは一切通知されない • 権限を許可する画面は階層の深いところにある ため、一度「いいえ」を選択してしまうとアプリか らWi-Fi接続をすることは難しい 「いいえ」を押したときの挙動
• Wi-Fi情報を追加するタイミングで案内メッセージ を表示するなど丁寧なコミュニケーションを取る 必要がある 「いいえ」を押したときの挙動
• Wi-Fi接続のおすすめ通知で「いいえ」を押した 時点で追加したWi-Fi情報も自動的に削除される • 再度自動接続させる場合、アプリからWi-Fi情報 を追加し、Wi-Fi接続のおすすめ通知で「はい」を 押さなければならない 「いいえ」を押したときの挙動
• 「はい」を押すと、アプリからのWi-Fi接続を許可 される • Wi-Fi Suggestion APIには現在接続されている Wi-Fiを強制切断して接続を切り替えるといった オプションはない 「はい」を押したときの挙動
• アプリから追加した接続先候補以外のWi-Fiに繋 がっている場合には「はい」を押しても接続が許 可されるだけで、アプリからWi-Fi接続を行うわけ ではない 「はい」を押したときの挙動
Wi-Fi接続のおすすめ通知の メッセージ修正
• Wi-Fi接続のおすすめ通知は単なる接続確認で はなく権限確認であることが分かったが、かなり ややこしい • Googleも接続確認のメッセージではよくないと 気づいたのか、android-10.0.0_r18から権限確 認だと分かるメッセージに変更された おすすめ通知のメッセージ修正
None
• メッセージの修正コミット自体は2019年8月に行 われてる • Pixel 2やPixel 3のアップデートとしてこの変更が 実際に適用されたのは2019年12月5日のアップ デートから おすすめ通知のメッセージ修正
• 同じAndroid 10でもどの時期のアップデートを適 用しているかによってメッセージが変わってきて しまう • 提供しているメーカーによっては今回の変更が 適用されていない可能性もある おすすめ通知のメッセージ修正
• Wi-Fi Suggestion APIを利用した機能を提供す る場合はアップデートバージョンを気にしておくと よい おすすめ通知のメッセージ修正
接続するまで何が追加されたか 分からないWi-Fi情報
• Android 10以前で利用できる WiFiManager#addNetworkメソッドでは追加内 容を保存済のネットワークとして確認できた 何が追加されたか分からないWi-Fi情報
None
• Wi-Fi Suggestion APIでの候補は対象のWi-Fi を検出するまでシステムのWi-Fi設定画面には 表示されない • どのSSIDに接続可能になるかはアプリ上のど こかで明記しておくとよい 何が追加されたか分からないWi-Fi情報
どこからも見えない 謎のブラックリスト
None
• 接続の解除は通常のWi-Fiと同じ用に動作する が、その後の挙動はおかしいことになる • ユーザーがアプリから追加されたWi-Fiを明示 的に接続解除してしまうと、接続を解除した SSIDはシステム内のブラックリストに入る どこからも見えない謎のブラックリスト
• ブラックリストに入れられたSSIDは、接続解除 されてから24時間は一切自動接続できなくなる • Wi-Fi Suggestionの候補からは削除されてい ないが、一度削除して再度追加を行ったとして も一切自動接続できない どこからも見えない謎のブラックリスト
• 現状、ブラックリストに入ってしまったSSIDはど こからも確認できない • アプリ上から何らかのメッセージを表示すること も不可能 どこからも見えない謎のブラックリスト
• システムの設定から解除するのではなくアプリ 上からWi-Fi Suggestion APIを使ってWi-Fi情 報を削除すると接続も解除される • 解除について注意事項を書いたり、接続を解 除する場合はアプリから接続の解除を促す警 告を出すなどするとよい
どこからも見えない謎のブラックリスト
アプリアンインストール時の挙動
• Wi-Fi Suggestion APIで追加されたWi-Fi情報 はアンインストール時に同時に削除される • どのSSIDが追加されているかはユーザーは分 からないため不安かもしれないので、アンイン ストール時に同時に削除されることは覚えてお くとよい
アプリアンインストール時の挙動
Android 11以降の Wi-Fi Suggestion APIについて
None
• 追加時のダイアログ以外にも大きな変更がいく つか入っている模様 • また機会があればお話します Android 11以降のWi-Fi Suggestion API
まとめ
• Wi-Fi Suggestion APIはシンプルな機能に見え て気をつけなければならない点が多い • 同じAndroid 10でもバージョンによって違いが あったりする •
Android 11以降でも大きな変更が入るので、注 意して見ておく必要がある まとめ
• 今回話せなかった以前のWi-Fi関連APIについ ての実装を含めた話や、Wi-Fi Suggestion API の実装の話についてもっと知りたい方は… おわりに
みんな気になる Android開発の最新事情 • in-app updates: アプリを使いながら アップデートしよう • 忙しい人のためのAAC最新事情 •
あなたとWi-Fi、今すぐサジェスト • Jetnewsで使われている Composableをざっと見る • Jetpack Composeのグランドデザイ ンを読み解く • 君も幸せになれるSpreadSheet使い こなし術 • First step of LiveData(改訂版) • ViewModelを理解する https://techbooster.booth.pm/items/1743311
ありがとうございました