Начиная с некоторых версий Android (я думаю, 2.3.x), вы не можете включать/отключать GPS через API, независимо от того, какие разрешения имеет приложение. Раньше это было возможно, используя ошибку в виджетах управления мощностью (см. здесь), но теперь это исправлено.
Предположим, что у меня есть root-доступ, как включить и выключить GPS?
EDIT: этот - это то, как вы получаете разрешение на чтение журналов на желе bean, что больше не разрешено для обычных приложений, Я попытался использовать аналогичное решение для разрешения WRITE_SECURE_SETTINGS, чтобы переключить gps, но это не сработало.
EDIT: до сих пор я нашел только одно решение, которое сработало: преобразование приложения в системное приложение (здесь можно найти рабочее решение , работает даже на Android 4.2.1). Однако то, что я думал, использует корень, чтобы обойти его с самого начала, поскольку root-разрешение может делать все в соответствии с тем, что я знаю.