私はRingtoneManagerを使用していますが、明らかに一部の電話では常にnullを返します。音が無音の場合、またはトーンが見つからない場合は null を返すことを知っています。サウンドがオンで、トーンがある場合に null が返されるのはなぜですか? コードは私のネクサスで動作します....
これが私が使用しているものです:
Ringtone ringtone;
ringtone = RingtoneManager.getRingtone(context, RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION));
if(ringtone == null)
{
Log.d("Debug", "ringtone is null");
}
else
{
ringtone.play();
}
着信音を再生するためのすべての権限を有効にしており (携帯電話で動作します)、着信音が SD カードにある場合に備えて SD カードの権限も有効にしています。何かご意見は?