Ich habe eine Benachrichtigung, die ich den Ton allmählich erhöhen möchte, bis es entlassen/beantwortet wird. Wie könnte ich das tun? Vielen Dank für Ihre Hilfe!Android: Allmählich erhöhen Sie die Lautstärke eines Benachrichtigungssounds
-1
A
Antwort
-1
So habe ich diese Aufgabe ausgeführt. Zuerst nehme ich die ursprünglichen Einstellungen auf. Nach dem Abschluss des und sobald der Benutzer die Benachrichtigung abmeldet, rufe ich eine andere Funktion auf, um die Einstellungen zurückzugeben. Hier ist der Code für den Abschluss des Klangs:
public static void graduateVolumeLevel(Context context) {
getVolumeLevel(context);
final AudioManager mAudioManager = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
final int DELAY_UNTIL_NEXT_INCREASE = 6 * 1000;
LaunchService.startThread();
mHandlerIncreaseVolume = new Handler(appService.thread.getLooper());
/*you may not need this part.
I use it b/c i run my stuff on another thread not to
interfere with the main thread.
Creating a new handler on main thread may be sufficient for your needs.*/
if(runnable==null) {
runnable = new Runnable() {
@Override
public void run() {
int currentSystemVolume = mAudioManager.getStreamVolume(AudioManager.STREAM_SYSTEM);
int currentRingVolume = mAudioManager.getStreamVolume(AudioManager.STREAM_RING);
if (currentSystemVolume != mAudioManager.getStreamMaxVolume(AudioManager.STREAM_SYSTEM)||
currentRingVolume != mAudioManager.getStreamMaxVolume(AudioManager.STREAM_RING)) { //if not max
//increase the volume of the alarm stream
mAudioManager.setStreamVolume(AudioManager.STREAM_RING,currentRingVolume++,0);
mAudioManager.setStreamVolume(AudioManager.STREAM_SYSTEM, currentRingVolume++, 0);
if(mHandlerIncreaseVolume!=null)
mHandlerIncreaseVolume.postDelayed(this, DELAY_UNTIL_NEXT_INCREASE);
}
}
};
}
mHandlerIncreaseVolume.post(runnable);
}
Ich fand einen ähnlichen Beitrag, aber konnte es nicht wieder finden, um es zu verweisen. Es ist, was ich verwendet habe, um meinen Code zu erstellen, mit einer leichten Änderung von mir, weil das Beispiel nicht genau so funktionierte wie es ist. Auch wenn ich die ursprünglichen Einstellungen zurückgebe, entferne ich Callbacks vom Handler und setze ihn auf null.
Verwandte Themen
- 1. Erhöhen Sie die Lautstärke der Aufnahme Android AudioRecord
- 2. iPhone: Lautstärke erhöhen
- 3. Lautstärke erhöhen, bevor Sie mit Python-Streaming
- 4. So erhöhen Sie die Lautstärke im OSX PlaySoftMidi-Beispiel.
- 5. Erhöhen Sie die Lautstärke auf Mac mit AppleScript?
- 6. Legen Sie die Lautstärke einer Android-Anwendung
- 7. Wie programmiere ich die Lautstärke auf Android?
- 8. Lautstärke für Twilio say-Befehl erhöhen
- 9. Erhöhen/Verringern der Lautstärke mit FFmpeg
- 10. So erhöhen Sie die maximale Audio-Ausgangsleistung
- 11. Hören Sie Lautstärke Änderungen Ereignisse auf Android
- 12. howler.js Update Lautstärke eines Tons
- 13. Können wir die Verstärkung des Mikrofons eines Android-Handys erhöhen?
- 14. Wie programmgesteuertes Eingeben von Lautstärke auf Android?
- 15. iPod-Lautstärke beeinflusst App-Lautstärke
- 16. erhöhen Sie uitableviewcell Höhe gleichzeitig erhöhen die innere UITextView
- 17. Persist allmählich Leistung
- 18. Wie erhöhen Sie die Auflösung eines Konturdiagramms in gnuplot?
- 19. Wie erhöhen Sie die Höhe eines HTML-Textfelds
- 20. Erhöhen Sie den int-Wert eines Ganzzahlwerts?
- 21. Java2D: Erhöhen Sie die Linienbreite
- 22. Android Studio - erhöhen Sie die Anzahl der Undos
- 23. Wie stelle ich die Lautstärke eines Sounds in OpenAL ein?
- 24. So erkennen Sie die Lautstärke des aktuellen Audiogeräts
- 25. Berechnen Lautstärke von dem Mikrofon auf Android
- 26. Die Opazität schrittweise erhöhen
- 27. SQL Server: NOP Updates allmählich langsamer, warum?
- 28. sich allmählich ausbreitende Wirkung auf recyclerview Artikel
- 29. erhöhen Sie den Speicher für die Anwendung
- 30. Zeichnungsgeschwindigkeit erhöhen SurfaceView Android