2012-05-11 45 views
0

在我的应用程序中,我将用户选择的铃声存储在SharedPreference文件中。当应用程序重新安装和backup is restored,我想检查设备上是否仍然存在铃声,因为如果它不,我会想要使用默认的铃声(而不是什么都不玩)。如何检查铃声是否存在?

为此,我计划重写onRestore方法并检查手机是否在设备上可用。

那么我该如何去检查Android设备上是否存在铃声(我宁愿使用最轻量级的方法)?

+0

取决于你存储的关于你的文件中的铃声。但我认为你的两个选择是获得一个File对象引用,并检查.exists()或查询Media ContentProvider – FoamyGuy

回答

2

假设你存储铃声作为content://Uri价值,我将在ContentResolver请使用openInputStream()getType()getType()可能是“最轻量级”,但它可能容易出现假阴性(例如,存在铃声但由于某种原因无法确定MIME类型)。