WEST LAFAYETTE, Ind., June 13 (UPI) -- A new type of software glitch in smartphones called "no-sleep energy bugs" can entirely drain batteries while the phones are not in use, U.S. researchers say.
Because conserving battery power is critical for smartphones, the industry has adopted "an aggressive sleep policy," Y. Charlie Hu, a Purdue University professor of electrical and computer engineering, says.
Such aggressive strategies can backfire, he said.
Because various background operations need to be performed while the phone is idle or "sleeping" -- such as automatically updating e-mail by checking with the remote server -- smartphone manufacturers make application programming interfaces, or APIs, available to app developers.
The developers include the APIs in their apps to instruct the phone to stay awake long enough to perform necessary operations.
"Unfortunately, programmers are only human," Hu said. "They make mistakes when using these APIs, which leads to software bugs that mishandle power control, preventing the phone from engaging the sleep mode. As a result, the phone stays awake and drains the battery."
The researchers studied 187 Android applications using APIs that control power, and 42 were found to contain errors -- or bugs -- in their coding use of the APIs.
"You don't see any difference," Hu said. "You put it in your pocket and you think everything is fine. You take it out, and your battery is dead."
The researchers say they've developed a software tool that can examine apps to determine where no-sleep bugs might exist and will present it at a mobile technology conference in Britain later this month, a Purdue release said.