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
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Kotaro TAJIMA
August 18, 2024
Programming
330
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
たった数分でできる着信音の鳴らし方
Kotaro TAJIMA
August 18, 2024
More Decks by Kotaro TAJIMA
See All by Kotaro TAJIMA
AndroidXR向けにアプリを作るには
kotambourine
0
480
Other Decks in Programming
See All in Programming
OSもどきOS
arkw
0
560
AI 時代のソフトウェア設計の学び方
masuda220
PRO
29
12k
net-httpのHTTP/2対応について
naruse
0
480
Oxcを導入して開発体験が向上した話
yug1224
4
310
ローカルLLMを使ってB2Bサービスを作っていての学び
yaotti
0
170
jQueryをバージョンアップする前に使いたいjQuery Migrate
matsuo_atsushi
0
480
不変条件と整合性境界—ビジネスが決める設計判断と実現パターン / Invariants and Consistency Boundaries
nrslib
13
4.1k
作って学ぶ、 JSX (TSX) ランタイムの基本
syumai
7
1.6k
並列実装の現場、2ヶ月間実務でAIを使い倒したAIもPCも私も限界が近い
ming_ayami
0
130
ローカルLLMでどこまでコードが書けるか -拡張版 / How much code can be written on a local LLM Extended
kishida
10
4.1k
ECSアプリログをFireLensでコスト削減しようとしたけど諦めた話 in Fargate×Node.js
akihisaikeda
2
4.2k
Semantic Version 単位で戦略を柔軟に変えて、パッケージアップデートを自動化する
daitasu
1
240
Featured
See All Featured
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
170
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
Into the Great Unknown - MozCon
thekraken
41
2.6k
Amusing Abliteration
ianozsvald
1
200
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.2k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.3k
HDC tutorial
michielstock
2
710
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.4k
RailsConf 2023
tenderlove
30
1.5k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
210
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
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