2017-11-10 8 views
1

Ich benutze eine Vollbild-Benachrichtigung für einen eingehenden Anruf und einen Klingelton spielen, indem sie die folgende Verwendung:Eingehender Anruf-Benachrichtigung Volumensteuerstrom

NotificationCompat.Builder mBuilder = 
    new NotificationCompat.Builder(context) 
     .setPriority(NotificationCompat.PRIORITY_HIGH) 
     .setSmallIcon(smallIcon) 
     .setContentIntent(contentIntent) 
     .setContentTitle(title) 
     .setContentText(text) 
     .setVibrate(vibratePattern) 
     .setSound(RingToneUtils.getDefaultRingtoneURI(), AudioManager.STREAM_RING) 
     .setAutoCancel(false) 
     .setLights(Color.argb(255, 0, 0, 255), 300, 300) 
     .addAction(iconAction1, action1, answerActionPendingIntent) 
     .addAction(iconAction2, action2, rejectActionPendingIntent) 
     .setFullScreenIntent(contentIntent, true); 

Dies funktioniert gut und zeigt als HUD, wenn angemessen. Das Problem besteht darin, dass die Lautstärke des Klingelton-Audiosignals durch den Benachrichtigungs-Lautstärke-Stream und nicht durch den Klingelton-Lautstärke-Stream gesteuert wird.

Wie kann dies zum Klingelton-Stream korrigiert werden? Technisch ist es eine Benachrichtigung, aber für den Benutzer scheint dies falsch.

+0

Suchst du nach etwas wie Klingelton für Benachrichtigung? – Sree

+0

Nein, es gibt den Klingelton wieder, wie Sie in der Zeile .setSound() sehen können. Ich möchte die Lautstärke mit der Ruftonlautstärke und nicht mit der Benachrichtigungslautstärke steuern, da es sich um einen Klingelton und nicht um einen Benachrichtigungston handelt – behelit

Antwort

0

Sie können Notification Sound einstellen AudioManager wie folgt aus:

AudioManager mgr=(AudioManager)getSystemService(Context.AUDIO_SERVICE); 
    mgr.setStreamVolume(AudioManager.STREAM_RING, 0, AudioManager.FLAG_ALLOW_RINGER_MODES); 

Sie Volumen für Notifizierungston von 0 bis 10. Hoffnung setzen kann dies dazu beitragen wird.

Verwandte Themen