在我的应用中,我将用户选择的铃声存储在SharedPreference文件中。当重新安装应用程序和backup is restored时,我想检查设备上是否仍然存在铃声,因为如果不是,我会想要使用默认铃声(而不是播放任何内容)。
为此,我计划覆盖onRestore
方法并检查设备上的铃声是否可用。
那么如何检查Android设备上是否存在铃声(我更倾向于使用最轻量级的方法)?
答案 0 :(得分:2)
假设您将铃声存储为content://
Uri
值,我会在openInputStream()
上使用getType()
或ContentResolver
。 getType()
可能是“最轻量级的”,但它可能容易出现漏报(例如,存在铃声,但由于某些原因无法确定MIME类型)。