1

アプリの音としてシンプルな通知音を使おうとしています。しかし、私はそれを機能させることができません。RingManager.TYPE_NOTIFICATIONを使用しても音が出ません。TYPE_ALARMまたはTYPE_RINGTONE(またはTYPE_ALL =携帯電話ではTYPE_RINGTONE)を使用すると機能することに注意してください。setVolume()も試してみましたが、結果がありません。

この時点で(別の電話から)自分にメッセージを送信すると、通知音が聞こえます。

一部の人々は私を助けようとしましたが、それはまだ解決されていません。多分誰かが私にそれがうまくいくかどうかをチェックすることができる日食のための最も簡単なプロジェクトを私に与えることができますか?多分それは私の携帯電話に何か問題がありますか?私はサムスンギャラクシーS2を持っています。

これが私のコードです。私は何を間違えますか?または、他に何を確認する必要がありますか?

Uri _sound = RingtoneManager.getDefaultUri( RingtoneManager.TYPE_NOTIFICATION ); 
// _sound.toString() returns "content://settings/system/notification_sound"

// this doesn't work either
// Uri _sound = RingtoneManager.getActualDefaultRingtoneUri( getApplicationContext(), RingtoneManager.TYPE_NOTIFICATION );
// _sound.toString() returns "content://media/internal/audio/media/10" if it can help

mp = new MediaPlayer();
try {
    // doesn't change anything while using TYPE_NOTIFICATION
    // mp.setVolume(1.0f, 1.0f); 

    // tried also mp.setDataSource(context, Settings.System.DEFAULT_NOTIFICATION_URI);
    // but no effect
    mp.setDataSource( getApplicationContext(), _sound );
    mp.setLooping( false );
    mp.prepare();
} catch( IOException e ) {}
mp.start();

ありがとう。

4

1 に答える 1

2

代わりに、次の構文を使用してみてください。

Uri _sound = RingtoneManager.getActualDefaultRingtoneUri(Context, RingtoneManager.TYPE_NOTIFICATION);

これは私のために働きます。

あなたもこれを試すことができます:

mp.setDataSource(context, Settings.System.DEFAULT_NOTIFICATION_URI);
于 2012-07-20T16:48:27.390 に答える