Android: Wenn der Ruftonmodus auf "Lautlos" eingestellt ist, wird das Telefon nicht mehr vibriert

9

Ich versuche, den Ruftonmodus des Telefons in RINGER_MODE_SILENT zu ändern, wenn ein Anruf mit den folgenden Codezeilen eingeht.

%Vor%

Während das Telefon aufhört zu klingeln, vibriert es weiterhin, obwohl die Dokumentation von RINGER_MODE_SILENT sagt, es sollte auch aufhören zu vibrieren.

Ich benutze das SDK 1.6

UPDATE:

Da ich noch keine Lösung gefunden habe, habe ich versucht, die Vibrationseinstellungen manuell zu deaktivieren.

%Vor%

Aber das verhindert auch nicht, dass das Telefon vibriert, wenn ein Anruf eingeht.

Irgendwelche Ideen?

UPDATE 2:

Heute habe ich versucht, das Problem zu lösen, indem ich die Vibration über ein Vibrationsobjekt abbringe.

%Vor%

Wieder ohne Erfolg. Jetzt sind mir die Ideen ausgegangen und ich frage mich, ob es überhaupt möglich ist, die Schwingung zu stoppen.

UPDATE 3:

Ich habe eine weitere interessante Tatsache entdeckt, als ich die Dokumentation der Vibrator-Klasse erneut gelesen habe . Die Dokumentation sagt:

  

"Wenn Ihr Prozess beendet wird, keine Vibration   Du hast damit angefangen, aufzuhören. "

Das hört sich für mich so an, als ob die Schwingung mit dem Prozess verbunden ist, der sie ausgelöst hat und auf den ein anderer Prozess nicht zugreifen kann.

    
Flo 13.04.2010, 18:39
quelle

3 Antworten

1

Entschuldigung, das ist ein bekannter Fehler in der Telefon-App; Es hört derzeit nicht nach AudioManager.RINGER_MODE_CHANGED_ACTION Broadcasts (was sagen würde, dass es den Klingelton und die Vibration stoppt). Ich empfehle einen Fehler bei b.android.com .

    
dsandler 01.05.2010 20:43
quelle
0

Ich habe auch Probleme, diese Funktion auszuschalten.

Ich habe die setVibrateSetting-Funktion von AudioManager verwendet und dabei AudioManager.VIBRATE_TYPE_NOTIFICATION und 0 gedrückt, aber es vibriert immer noch, wenn eine Textnachricht empfangen wird.

Ich frage mich, ob es eine Möglichkeit gibt, diese Funktion jetzt vollständig zu überschreiben ...

Ich denke, die Methode cancel () von Vibrator ist für eine gerade stattfindende Vibration.

    
androidjutsu 19.04.2010 15:21
quelle
0

Haben Sie die Berechtigung MODIFY_AUDIO_SETTINGS ausprobiert? SDK sagt: Erlaubt einer Anwendung, globale Audioeinstellungen zu ändern .

    
user942821 20.03.2012 15:42
quelle