2009-02-27 6 views
6

J'ai vu des techniques pour m'assurer qu'une application respecte le commutateur de mise en sourdine, mais est-il possible de mettre l'iPhone en sourdine (aucun son d'aucune application) en utilisant le SDK?Est-il possible de couper l'iPhone par programme?

+0

Pourquoi voulez-vous faire cela? Peut-être que le contexte aiderait ... – runako

+0

Vous ne devriez pas vraiment faire cela car vous pourriez faire taire le téléphone sans la permission des utilisateurs. Une bonne chose à faire est de couper les sons/musique que votre application fait. Vous pouvez stocker une valeur globale comprise entre 0 et 1 et l'utiliser pour contrôler le volume. –

Répondre

11

No.

applications développées à l'aide du SDK officiel ne peut pas changer (et dans la plupart des cas ne peuvent même pas accès) des paramètres du système à l'échelle.

2

Étant donné qu'une seule application peut s'exécuter à la fois, la seule utilisation possible est de couper les applications d'autres personnes, et Apple devrait savoir clairement pourquoi cela est évité.

Que faire si une application a coupé le son de l'iPhone et que je ne le savais pas? Il ne peut pas déplacer physiquement l'interrupteur de mise en sourdine sur le côté du téléphone, donc cela ne correspondrait pas, et je devrais comprendre a) que le téléphone était en sourdine et b) comment le désactiver sans l'interrupteur.

4

Il est techniquement possible de modifier le volume du système grâce à la classe AVSystemController privée dans Celestial.framework, mais empêchera votre application d'obtenir l'approbation d'Apple

2

Je peux modifier le volume à l'aide AVSystemController, il fixe le minimum qui est de 0,06 X. Y at-il classe/API pour le rendre complètement muet? toggleActiveCategoryMuted ne fonctionne pas

7

Cela est possible, mais uniquement en utilisant des API privées. Je suis seulement allé jusqu'à fermer la sonnerie, mais vous devriez aussi pouvoir contrôler le niveau du maître.

Voir How to disable iOS System Sounds

Questions connexes