ios - How to prevent iPhone to lock when my app is charging -
whole question in title.
here did.
test plug iphone mac not charger don;t know if important.
- (bool)application:(uiapplication *)application didfinishlaunchingwithoptions:(nsdictionary *)launchoptions {... [uidevice currentdevice].batterymonitoringenabled = yes; [[nsnotificationcenter defaultcenter] addobserver:self selector:@selector(batterystatedidchange:) name:uidevicebatterystatedidchangenotification object:nil]; ...} - (void)batterystatedidchange:(nsnotification *)notification { [[uidevice currentdevice] setbatterymonitoringenabled:yes]; if ([[uidevice currentdevice] batterystate] == uidevicebatterystatecharging || [[uidevice currentdevice] batterystate] == uidevicebatterystatefull ){ [uiapplication sharedapplication].idletimerdisabled = yes; } else if ([[uidevice currentdevice] batterystate] == uidevicebatterystateunplugged) { [uiapplication sharedapplication].idletimerdisabled = no; } } what missing?
the immediate problem see you're registering notified when charging status changes in future, not configuring idle timer before state of charger changes.
for example, if build device, plugged in , charging (possibly full) , unless unplug device, uidevicebatterystatedidchangenotification has no reason posted.
consider this:
[[nsnotificationcenter defaultcenter] addobserver:self selector:@selector(batterystatedidchange:) name:uidevicebatterystatedidchangenotification object:nil]; [self batterystatedidchange:nil];
Comments
Post a Comment