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
Kotaro TAJIMA
August 18, 2024
Programming
0
310
たった数分でできる着信音の鳴らし方
Kotaro TAJIMA
August 18, 2024
Tweet
Share
More Decks by Kotaro TAJIMA
See All by Kotaro TAJIMA
AndroidXR向けにアプリを作るには
kotambourine
0
370
Other Decks in Programming
See All in Programming
モジュラモノリスにおける境界をGoのinternalパッケージで守る
magavel
0
3.5k
Claude Codeセッション現状確認 2026福岡 / fukuoka-aicoding-00-beacon
monochromegane
4
410
受け入れテスト駆動開発(ATDD)×AI駆動開発 AI時代のATDDの取り組み方を考える
kztakasaki
2
560
Cyrius ーLinux非依存にコンテナをネイティブ実行する専用OSー
n4mlz
0
140
Agent Skills Workshop - AIへの頼み方を仕組み化する
gotalab555
15
8.6k
2026年は Rust 置き換えが流行る! / 20260220-niigata-5min-tech
girigiribauer
0
230
nuget-server - あなたが必要だったNuGetサーバー
kekyo
PRO
0
230
「やめとこ」がなくなった — 1月にZennを始めて22本書いた AI共創開発のリアル
atani14
0
370
TipKitTips
ktcryomm
0
160
Takumiから考えるSecurity_Maturity_Model.pdf
gessy0129
1
140
GC言語のWasm化とComponent Modelサポートの実践と課題 - Scalaの場合
tanishiking
0
110
モックわからないマン卒業記 ~振る舞いを起点に見直した、フロントエンドテストにおけるモックの使いどころ~
tasukuwatanabe
2
110
Featured
See All Featured
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
230
4 Signs Your Business is Dying
shpigford
187
22k
Statistics for Hackers
jakevdp
799
230k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
140
Making the Leap to Tech Lead
cromwellryan
135
9.8k
The SEO identity crisis: Don't let AI make you average
varn
0
410
AI: The stuff that nobody shows you
jnunemaker
PRO
3
380
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
1
1.4k
Design in an AI World
tapps
0
170
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
9.9k
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