Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
QucikSettingsTileAPI
Search
funnelbit
September 28, 2016
Technology
390
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
QucikSettingsTileAPI
funnelbit
September 28, 2016
More Decks by funnelbit
See All by funnelbit
Hatena Engineer Seminar #9
funnelbit
5
7.5k
droidkaigi-2017-renovation
funnelbit
10
11k
Dart
funnelbit
0
310
BottomBarAndSnackBar
funnelbit
0
550
Dagger2 Optional bindings
funnelbit
0
620
WearableRecyclerView
funnelbit
1
860
Mobile Vision
funnelbit
0
500
AwarenessAPI
funnelbit
0
170
Asynchronous Injection
funnelbit
1
290
Other Decks in Technology
See All in Technology
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
16
120k
HolmesGPTで始めるSREエージェント入門!プラットフォームの障害調査はAIにお任せ 〜
sanghyuk
0
250
スキルを作る、その前に!複数人で使われるスキルを 作るためのプロセス
junkifurukawa
1
150
AgentCoreで実践するハーネスエンジニアリング
yakumo
0
140
TiDBファミリーにDWHが新登場!! TiDB最新情報 / TiDB update 202609
yoshiakiyamasaki
0
180
生成AIを使って「人が」考える技術 ― AI時代の人機共想と実践ノウハウ|UNITT AC2026
ishiirikie
0
500
AIに会社の文脈を理解させる技術~上流工程・非エンジニアにも広げるハーネスエンジニアリング実践~
ochtum
0
200
認知負荷を吸収し、プロダクトをまたぐPR Preview基盤の設計事例
taiki45
2
560
Swap and Memory Reclaim - Squeezing Out More RAM
ennael
PRO
1
1.5k
雪かき部 #7 もう怖くない!SELECT文!
foursue
0
270
形式手法を使って仕様をコーディングしよう
mikanichinose
0
160
Apache Iceberg が拓く AI 時代のオープンレイクハウス
tomtanaka
0
210
Featured
See All Featured
Reality Check: Gamification 10 Years Later
codingconduct
0
2.3k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
35
2.9k
Site-Speed That Sticks
csswizardry
13
1.5k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
2
2.2k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
31k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
340
The Pragmatic Product Professional
lauravandoore
37
7.5k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
6
1.2k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
530
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
1
430
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Transcript
2VJDL4FUUJOHT5JMF "1*
ࣗݾհ ଜྋ גࣜձࣾͯͳ )BUFOBGVOOFMCJU 5XJUUFS!FYQFSPQFSP
2VJDL4FUUJOHT5JMF"1*
2VJDL4FUUJOHT5JMF"1* w ͔Β"1*͕ެ։͞Εͨ w BOESPJETFSWJDFRVJDLTFUUJOHT5JMF w BOESPJETFSWJDFRVJDLTFUUJOHT5JMF4FSWJDF
5JMF
5JMF w TFU*DPO *DPO TFU-BCFM $IBS4FRVFODF TFU$POUFOU%FTDSJQUJPO JOU TFU4UBUF
JOU w VQEBUF5JMF w 5JMFͷঢ়ଶΛөͤ͞Δʢද͕ࣔมΘΔʣ
5JMF public class QuickSettingsService extends TileService { … Tile tile
= this.getQsTile(); … tile.setIcon(…); tile.setTitle(…); tile.updateTile(); }
5JMF4FSWJDF
5JMF4FSWJDF public class QSService extends TileService { @Override public void
onTileAdded() { super.onTileAdded(); } @Override public void onTileRemoved() { super.onTileRemoved(); } @Override public void onClick() { super.onClick(); } @Override public void onStartListening() { super.onStartListening(); } @Override public void onStopListening() { super.onStopListening(); } } w 4FSWJDFͷࢠΫϥε w ܧঝͯ͠͏
5JMF4FSWJDF w PO5JMF"EEFE w 5JMF͕Ճ͞ΕͨΒݺΕΔ w PO5JMF3FNPWFE w
5JMF͕আ͞ΕͨΒݺΕΔ w PO$MJDL w 5JMF͕ΫϦοΫͨ͠ΒݺΕΔ
5JMF4FSWJDF w PO4UBSU-JTUFOJOH w Ϧεχϯάঢ়ଶʹೖͬͨΒݺΕΔ w PO4UPQ-JTUFOJOH w
Ϧεχϯάঢ়ଶͰແ͘ͳͬͨΒݺΕΔ
"OESPJE.BOJGFTU
"OESPJE.BOJGFTU <service android:name=".QuickSettingsService" android:icon="@drawable/ic_android_black_24dp" android:label="@string/tile_label" android:permission="android.permission.BIND_QUICK_SETTINGS_ TILE"> <intent-filter> <action android:name="android.service.quicksettings.action.QS_TILE"
/> </intent-filter> </service>
"OESPJE.BOJGFTU <service android:name=".QuickSettingsService" android:icon="@drawable/ic_android_black_24dp" android:label="@string/tile_label" android:permission="android.permission.BIND_QUICK_SETTINGS_ TILE"> <intent-filter> <action android:name="android.service.quicksettings.action.QS_TILE"
/> </intent-filter> </service>
5JMF4FSWJDF TUBSU"DUJWJUZ"OE$PMMBQTF TIPX%JBMPH VOMPDL"OE3VO
TUBSU"DUJWJUZ"OE$PMMBQTF w "DUJWJUZىಈ͠2VJDL4FUUJOHTΛͨͨΜͰ͘ΕΔ w ϩοΫதͩͱͨͨΊͳ͍ʢ"DUJWJUZىಈ͢Δʣ public class QSIntentService extends TileService
… Intent intent = new Intent(getApplicationContext(), ResultActivity.class); startActivityAndCollapse(intent); … }
TIPX%JBMPH w 2VJDL4FUUJOHTΛดͯ͡%JBMPHΛग़͢ w ϩοΫதͩͱͨͨΊͳ͍ʢ%JBMPHىಈ͢Δʣ public class QSDialogService extends TileService
{ … DialogFragment dialog = DialogFragment.create(); showDialog(dialog); … }
VOMPDL"OE3VO w ʮΞϯϩοΫͨ͠Βಈ͘ʯॲཧ͕͔͚Δ public class QSService extends TileService { …
@Override public void onClick() { unlockAndRun(new Runnable() { @Override public void run() { Log.e("ಈ͘Α", "΄͓͓͓͓͓͓͓"); } }); } … }
·ͱΊ w ཱͯΕΔ͔Ͳ͏͔ϓϩμΫτʹΑΔ w ʮϩοΫதԡͤΔʯͱ͍͏ͷ͕ϙΠϯτ w Ϣʔβʹ͓͍ͯΒ͏ಋઢΛͲ͏͢Δ͔ʁ
ࢀߟ w IUUQTDPEFMBCTEFWFMPQFSTHPPHMFDPN DPEFMBCTBOESPJEORVJDLTFUUJOHT JOEFYIUNM JOEFY''JP
͋Γ͕ͱ͏͍͟͝·ͨ͠