测试平台
Platform: RK3399
OS: Android 7.1.1
现象
机器通过WIFI连接路由器时灭屏后无法发现DLNA设备,但是通过以太网连接就无此问题
解决方案
diff --git a/service/java/com/android/server/wifi/WifiStateMachine.java b/service/java/com/android/server/wifi/WifiStateMachine.java
index ac5abec..64f1ce7 100644
--- a/service/java/com/android/server/wifi/WifiStateMachine.java
+++ b/service/java/com/android/server/wifi/WifiStateMachine.java
@@ -986,22 +986,22 @@ public class WifiStateMachine extends StateMachine implements WifiNative.WifiRss
// TODO - needs to be a bit more dynamic
mDfltNetworkCapabilities = new NetworkCapabilities(mNetworkCapabilitiesFilter);
- IntentFilter filter = new IntentFilter();
- filter.addAction(Intent.ACTION_SCREEN_ON);
- filter.addAction(Intent.ACTION_SCREEN_OFF);
- mContext.registerReceiver(
- new BroadcastReceiver() {
- @Override
- public void onReceive(Context context, Intent intent) {
- String action = intent.getAction();
-
- if (action.equals(Intent.ACTION_SCREEN_ON)) {
- sendMessage(CMD_SCREEN_STATE_CHANGED, 1);
- } else if (action.equals(Intent.ACTION_SCREEN_OFF)) {
- sendMessage(CMD_SCREEN_STATE_CHANGED, 0);
- }
- }
- }, filter);
+ // IntentFilter filter = new IntentFilter();
+ // filter.addAction(Intent.ACTION_SCREEN_ON);
+ // filter.addAction(Intent.ACTION_SCREEN_OFF);
+ // mContext.registerReceiver(
+ // new BroadcastReceiver() {
+ // @Override
+ // public void onReceive(Context context, Intent intent) {
+ // String action = intent.getAction();
+
+ // if (action.equals(Intent.ACTION_SCREEN_ON)) {
+ // sendMessage(CMD_SCREEN_STATE_CHANGED, 1);
+ // } else if (action.equals(Intent.ACTION_SCREEN_OFF)) {
+ // sendMessage(CMD_SCREEN_STATE_CHANGED, 0);
+ // }
+ // }
+ // }, filter);
mContext.getContentResolver().registerContentObserver(Settings.Global.getUriFor(
Settings.Global.WIFI_SUSPEND_OPTIMIZATIONS_ENABLED), false,