Я нашел this SO post по-видимому, имеются многочисленные ошибки о том, что на Android Bug Tracker, который мощь происходит даже с замками и разрешения.
В моем случае я могу заставить Lock работать со всем устройством, на котором я могу протестировать. Не знаете, как вы пытались его реализовать, так что вот версия, которую я нашел через интернет (Извините, если я не могу найти автора).
Примечание: моя версия может немного отличаться от версии Java, поскольку я использую Xamarin Android на C#, но логика должна оставаться неизменной.
Сначала вы должны добавить разрешение для блокировки Wi-Fi
<uses-permission android:name="android.permission.WAKE_LOCK" />
Второй вы должны получить wifiManager
wifiManager = (WifiManager) GetSystemService(WifiService);
Затем вы должны написать код, чтобы aquire и освободить замок на подходящее время.
private void AquireWifiLock()
{
if (wifiLock == null)
{
wifiLock = wifiManager.CreateWifiLock(WifiMode.Full, "aTagForYourLock");
wifiLock .Acquire();
}
}
private void ReleaseWifiLock()
{
if (wifiLock == null)
{
return;
}
wifiLock .Release();
wifiLock = null;
}
Я знаю, что это действительно старо, но вы когда-нибудь решали эту проблему? –
Это не проблема андроида. Был один сон в одной из наших ниток, которая вызывала освобождение LOCK. Я смутно помню точное решение. –