2009-02-27 2 views
6

Ho visto tecniche per assicurarsi che un'applicazione rispetti l'interruttore di silenziamento, ma è possibile impostare l'iPhone in modalità silenziosa (nessun suono da nessuna app) utilizzando l'SDK?È possibile disattivare l'audio di iPhone a livello di programmazione?

+0

Perché vuoi farlo? Forse un contesto potrebbe aiutare ... – runako

+0

Non dovresti farlo perché potresti mettere in silenzio il telefono senza il permesso dell'utente. Una cosa buona da fare è semplicemente disattivare i suoni/musica che la tua app produce. È possibile memorizzare un valore globale compreso tra 0 e 1 e usarlo per controllare il volume. –

risposta

11

No.

applicazioni sviluppate utilizzando l'SDK ufficiale non può cambiare (e in molti casi non può nemmeno accesso) le impostazioni di sistema.

2

Poiché è possibile eseguire solo un'app alla volta, l'unico utilizzo possibile a cui posso pensare è di disattivare l'audio delle app di altre persone e dovrebbe essere abbastanza chiaro il motivo per cui Apple lo impedisce.

Cosa farei se un'app disattivasse l'iPhone e non sapevo che fosse successo? Non è possibile spostare fisicamente l'interruttore di silenziamento sul lato del telefono, in modo che non corrisponda, e dovrei capire a) che il telefono è stato disattivato eb) come riattivarlo senza l'interruttore.

4

E 'tecnicamente possibile modificare il volume del sistema attraverso la AVSystemController classe privata in Celestial.framework, ma impedirà la vostra applicazione di ottenere l'approvazione di Apple

2

posso cambiare il volume usando AVSystemController, imposta al minimo, che è 0,06 X. C'è una classe/API per disattivarlo completamente? toggleActiveCategoryMuted non funziona

7

È possibile, ma si utilizzano solo API private. Sono andato solo fino al silenziamento della suoneria, ma dovresti essere in grado di controllare anche il livello principale.

Vedi How to disable iOS System Sounds