C'è un modo per sapere quando il mio dispositivo (iPhone) è collegato alla fonte di alimentazione, come un computer o sistemi audio per auto con una porta USB? Uso i servizi di localizzazione nella mia app e voglio passare automaticamente a kCLLocationAccuracyBestForNavigation
quando il dispositivo è collegato. Grazie ...Come sapere quando il dispositivo iOS è collegato?
risposta
È possibile registrarsi per ricevere una notifica quando un accessorio si collega o si disconnette.
Esempio:
[[EAAccessoryManager sharedAccessoryManager] registerForLocalNotifications];
NSNotificationCenter *notificationCenter = [NSNotificationCenter defaultCenter];
[notificationCenter addObserver:self
selector:@selector(accessoryDidConnect:)
name:EAAccessoryDidConnectNotification
object:nil];
[notificationCenter addObserver:self
selector:@selector(accessoryDidDisconnect:)
name:EAAccessoryDidDisconnectNotification
object:nil];
Una volta ricevuta questa notifica è possibile utilizzare un ciclo for per passare attraverso ogni accessorio come:
NSArray *accessories = [[EAAccessoryManager sharedAccessoryManager] connectedAccessories];
EAAccessory *accessory = nil;
for (EAAccessory *obj in accessories)
{
// See if you're interested in this particular accessory
}
Ad un certo punto (dealloc forse) vi verrà voglia di annullare la registrazione per queste notifiche. È possibile farlo come:
NSNotificationCenter *notificationCenter = [NSNotificationCenter defaultCenter];
[notificationCenter removeObserver:self
name:EAAccessoryDidDisconnectNotification
object:nil];
[notificationCenter removeObserver:self
name:EAAccessoryDidConnectNotification
object:nil];
[[EAAccessoryManager sharedAccessoryManager] unregisterForLocalNotifications];
È possibile attivare il monitoraggio della batteria attraverso il UIDevice class e controllare lo stato della batteria per vedere se è in carica:
typedef enum {
UIDeviceBatteryStateUnknown,
UIDeviceBatteryStateUnplugged,
UIDeviceBatteryStateCharging,
UIDeviceBatteryStateFull,
} UIDeviceBatteryState;
ti consigliamo di verificare la presenza di ricarica o Completo prima di abilitare la migliore precisione GPS.
Per controllare lo stato della batteria:
UIDeviceBatteryState batteryState = [[UIDevice currentDevice] batteryState];
Per iscriversi alla notifica di cambiamenti di stato della batteria, per esempio ottenendo una chiamata al proprio metodo di azione batteryStateChanged
:
- (void) setup {
[[UIDevice currentDevice] setBatteryMonitoringEnabled:YES];
NSNotificationCenter * center= [NSNotificationCenter defaultCenter];
[center addObserver:self
selector:@selector(batteryStateChanged)
name:UIDeviceBatteryStateDidChangeNotification
object:nil];
}
Ricordate di annullare l'iscrizione quando l'oggetto è dealloced:
- (void) dealloc
{
[[NSNotificationCenter defaultCenter] removeObserver:self];
[[UIDevice currentDevice] setBatteryMonitoringEnabled:NO];
}
- 1. Come sapere quando il dispositivo è in carica?
- 2. Come sapere quando un nuovo dispositivo di archiviazione USB è collegato in Qt?
- 3. Come posso sapere se un dispositivo iOS ha un GPS?
- 4. Rileva quando è collegato un dispositivo USB in C
- 5. Un'app iOS è attiva quando il dispositivo è bloccato?
- 6. Come stabilire a quale porta è collegato un dispositivo USB?
- 7. Dispositivo USB collegato
- 8. Studio Android - Il dispositivo è collegato ma "offline"
- 9. Come sapere quando il TTS è finito?
- 10. Android - Come sapere se il dispositivo è solo WiFi?
- 11. Programatically ottenere iOS dispositivo screenshot dal computer collegato Mac
- 12. La tastiera predefinita non viene quando il dispositivo di scansione del codice a barre è collegato tramite Bluetooth in IOS
- 13. C# Serial Port Verifica se il dispositivo è collegato
- 14. Come rintracciare il dispositivo (iOS e Android) dispositivo utilizzando PhoneGap
- 15. Come sapere se il dispositivo Cocoa Touch può effettuare chiamate?
- 16. Sapere quando il modulo figlio è chiuso
- 17. Come catturare applicazione di disinstallare il dispositivo e lasciare server sapere su questo (iOS/Android)
- 18. Come rilevare quando il dispositivo è orientato capovolto in libGDX
- 19. Rileva quando è collegato un nuovo display
- 20. Come sapere quando Big O è logaritmico?
- 21. Emulazione cinematica senza dispositivo reale collegato
- 22. iOS - Come sapere quando NSOperationQueue termina l'elaborazione di alcune operazioni?
- 23. Xcode: questo dispositivo non è più collegato errore
- 24. Come posso sapere quando HttpClient è scaduto?
- 25. Quando un frammento OSGi è collegato all'host?
- 26. Come sapere quando un utente valuta un'app/gioco iOS
- 27. Come sapere quando il controller è stato ripreso dallo sfondo?
- 28. Java - Come sapere quando il thread è in attesa?
- 29. gatt.writeDescriptor errore di richiamata di stato quando si utilizza il dispositivo collegato
- 30. Come si ottengono i cicli di carica della batteria da un dispositivo iOS collegato?
** Thanks a lot ** io TES t questo codice ... – human4
@ human4 Sempre felice di aiutare. Se KVO su 'UIDevice' è' batteryState' funziona allora è quello che vorrei andare con. – Sam
Questo non funziona più. –