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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Kotaro TAJIMA
August 18, 2024
Programming
330
0
Share
たった数分でできる着信音の鳴らし方
Kotaro TAJIMA
August 18, 2024
More Decks by Kotaro TAJIMA
See All by Kotaro TAJIMA
AndroidXR向けにアプリを作るには
kotambourine
0
430
Other Decks in Programming
See All in Programming
🦞OpenClaw works with AWS
licux
1
370
AI時代のエンジニアリングの原則 / Engineering Principles in the AI Era
haru860
0
1.3k
ハーネスエンジニアリングとは?
kinopeee
13
7k
検索設計から 推論設計への重心移動と Recall-First Retrieval
po3rin
5
1.7k
書き換えて学ぶTemporal #fukts
pirosikick
2
380
Agent Skills を社内で育てる仕組み作り
jackchuka
1
2k
属人化しないコード品質の作り方_2026.04.07.pdf
muraaano
1
360
〜バイブコーディングを超えて〜 チームで実験し続けたAI駆動開発
tigertora7571
0
210
AI Agent と正しく分析するための環境作り
yoshyum
2
510
ついに来た!本格的なマルチクラウド時代の Google Cloud
maroon1st
0
440
[RubyKaigi 2026] Require Hooks
palkan
1
320
Terraform言語の静的解析 / static analysis of Terraform language
wata727
1
150
Featured
See All Featured
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Tell your own story through comics
letsgokoyo
1
920
The Cult of Friendly URLs
andyhume
79
6.9k
So, you think you're a good person
axbom
PRO
2
2k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.9k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.2k
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
800
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
110
Faster Mobile Websites
deanohume
310
31k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
340
Transcript
たった数分でできる 着信音の鳴らし方 speaker: こた (@kotambourine) in DroidKaigi.collect { #11@Sapporo }
あじぇんだ! • はじめに • Ringtone • RingtoneManager • まとめ •
自己紹介 2
はじめに 3
4 このLTは... 皆さんのリアクションを 歓迎します (無いとスピーカーが悲しい、とても )
5 閑話休題
6 皆さん着信音は好きですか?
7 皆さん着信音は好きですか? スッコココ... ピロンッ... ラ◯ンッ...
8 好きなタイミングで鳴らすと楽しい
9 n = 1(私調べ)
10 着信音を鳴らしたいニーズに答えて
たった数分でできる 着信音の鳴らし方 speaker: こた (@kotambourine) in DroidKaigi.collect { #11@Sapporo }
たった数分 でできる 着信音の鳴らし方 speaker: こた (@kotambourine) in DroidKaigi.collect { #11@Sapporo
}
// URIを取得 val uri: Uri = RingtoneManager.getDefaultUri( RingtoneManager.TYPE_RINGTONE ) //
Ringtoneを取得して val ringtone: Ringtone = RingtoneManager.getRingtone(context, uri) // 鳴らす! ringtone.play() 13
// URIを取得 val uri: Uri = RingtoneManager.getDefaultUri( RingtoneManager.TYPE_RINGTONE ) //
Ringtoneを取得して val ringtone: Ringtone = RingtoneManager.getRingtone(context, uri) // 鳴らす! ringtone.play() 14
// URIを取得 val uri: Uri = RingtoneManager.getDefaultUri( RingtoneManager.TYPE_RINGTONE ) //
Ringtoneを取得して val ringtone: Ringtone = RingtoneManager.getRingtone(context, uri) // 鳴らす! ringtone.play() 15
// URIを取得 val uri: Uri = RingtoneManager.getDefaultUri( RingtoneManager.TYPE_RINGTONE ) //
Ringtoneを取得して val ringtone: Ringtone = RingtoneManager.getRingtone(context, uri) // 鳴らす! ringtone.play() 16
17 おしまい! ご清聴ありがとうございました!
18 嘘ですもう少し掘り下げます
Ringtone 19
20 Ringtoneとはなんぞや 着信音を簡単に鳴らすためのクラス API Level 1からいる古参勢 play, stop関数と数個の変数という単純な構成 https://developer.android.com/reference/kotlin/android/media/Ringtone
RingtoneManager 21
22 RingtoneManagerとはなんぞや Ringtoneを管理するクラス 基本的にはこのクラスを通じて諸々を動かす 端末内の有効な着信音を取得したりRingtoneの再 生を強制終了したりできる https://developer.android.com/reference/kotlin/android/media/RingtoneManager
23 Ringtoneのデフォルトで存在する種類 RingtoneManager.TYPE_ALARM RingtoneManager.TYPE_RINGTONE RingtoneManager.TYPE_NOTIFICATION https://developer.android.com/reference/kotlin/android/media/RingtoneManager
24 聞いてみよう
25 着信音の一覧を取得する // RingtoneManagerのインスタンス生成 val rm = RingtoneManager(context) // TYPE_ALLをセット
rm.setType(RingtoneManager.TYPE_ALL) // カーソルを取得(内部では表で管理) val cursor: Cursor = rm.cursor https://developer.android.com/reference/kotlin/android/media/RingtoneManager
26 着信音の一覧を取得する // RingtoneManagerのインスタンス生成 val rm = RingtoneManager(context) // TYPE_ALLをセット
rm.setType(RingtoneManager.TYPE_ALL) // カーソルを取得(内部では表で管理) val cursor: Cursor = rm.cursor https://developer.android.com/reference/kotlin/android/media/RingtoneManager
27 着信音の一覧を取得する // RingtoneManagerのインスタンス生成 val rm = RingtoneManager(context) // TYPE_ALLをセット
rm.setType(RingtoneManager.TYPE_ALL) // カーソルを取得(内部では表で管理) val cursor: Cursor = rm.cursor https://developer.android.com/reference/kotlin/android/media/RingtoneManager
28 着信音の一覧を取得する // RingtoneManagerのインスタンス生成 val rm = RingtoneManager(context) // TYPE_ALLをセット
rm.setType(RingtoneManager.TYPE_ALL) // カーソルを取得(内部では表で管理) val cursor: Cursor = rm.cursor https://developer.android.com/reference/kotlin/android/media/RingtoneManager
29 着信音の情報を取得する // カーソルのポジションを取得 val position = cursor.position // getString関数でタイトルなどを取得
val hoge = cursor.getString( RingtoneManager.HOGE_COLUMN_INDEX ) https://developer.android.com/reference/kotlin/android/media/RingtoneManager
30 着信音の情報を取得する // カーソルのポジションを取得 val position = cursor.position // getString関数でタイトルなどを取得
val hoge = cursor.getString( RingtoneManager.HOGE_COLUMN_INDEX ) https://developer.android.com/reference/kotlin/android/media/RingtoneManager
31 Cursorのpositionを取得する // カーソルのポジションを取得 val position = cursor.position // Ringtoneインスタンスを取得
val ringtone = rm.getRingtone(position) ringtone.play() https://developer.android.com/reference/kotlin/android/media/RingtoneManager
32 Cursorのpositionを取得する // カーソルのポジションを取得 val position = cursor.position // Ringtoneインスタンスを取得
val ringtone = rm.getRingtone(position) ringtone.play() https://developer.android.com/reference/kotlin/android/media/RingtoneManager
33 Cursorのpositionを取得する // カーソルのポジションを取得 val position = cursor.position // Ringtoneインスタンスを取得
val ringtone = rm.getRingtone(position) ringtone.play() https://developer.android.com/reference/kotlin/android/media/RingtoneManager
34 別アプリの着信音が取得できる
35 ので!
まとめ 36
37 着信音はRingtone(Manager)クラスで 簡単に鳴らすことができるよ!
自己紹介 38
39 こた @kotambourine Affiliation: 公立はこだて未来大学 複雑系知能学科 複雑系コース 4年 From: 札幌市清田区,
北海道大麻(おおあさ)高等学校 Love: カービィ, Kotlin(Android, Web, Desktop) Link: https://kota-shiokara.github.io
時間が余ったら経緯とか 話すよコーナー 40