Android 10 裁剪 wifi 相关服务

需要修改的文件:

frameworks\base\services\java\com\android\server/SystemServer.java

framework/base/services/core/java/com/android/server/display/WifiDisplayController.java

1.SystemServer.java中去掉WIFI相关服务(以下内容全部注释掉)

          if (context.getPackageManager().hasSystemFeature(
                    PackageManager.FEATURE_WIFI)) {
               Wifi Service must be started first for wifi-related services.
                traceBeginAndSlog("StartWifi");
                mSystemServiceManager.startService(WIFI_SERVICE_CLASS);
                traceEnd();
                traceBeginAndSlog("StartWifiScanning");
                mSystemServiceManager.startService(
                        "com.android.server.wifi.scanner.WifiScanningService");
                traceEnd();
            }

            if (context.getPackageManager().hasSystemFeature(
                    PackageManager.FEATURE_WIFI_RTT)) {
                traceBeginAndSlog("StartRttService");
                mSystemServiceManager.startService(
                        "com.android.server.wifi.rtt.RttService");
                traceEnd();
            }

            if (context.getPackageManager().hasSystemFeature(
                    PackageManager.FEATURE_WIFI_AWARE)) {
                traceBeginAndSlog("StartWifiAware");
                mSystemServiceManager.startService(WIFI_AWARE_SERVICE_CLASS);
                traceEnd();
            }

            if (context.getPackageManager().hasSystemFeature(
                    PackageManager.FEATURE_WIFI_DIRECT)) {
                traceBeginAndSlog("StartWifiP2P");
                mSystemServiceManager.startService(WIFI_P2P_SERVICE_CLASS);
                traceEnd();
            }

2.WifiDisplayController.java

由于第一步裁掉wifi启动后,会造成系统无法正常启动起来,还需要做以下修改 才能正常使用

在构造方法中去掉其注释部分就可以了 

   public WifiDisplayController(Context context, Handler handler, Listener listener) {
        mContext = context;
        mHandler = handler;
        mListener = listener;

        // mWifiP2pManager = (WifiP2pManager)context.getSystemService(Context.WIFI_P2P_SERVICE);
        // mWifiP2pChannel = mWifiP2pManager.initialize(context, handler.getLooper(), null);

        // IntentFilter intentFilter = new IntentFilter();
        // intentFilter.addAction(WifiP2pManager.WIFI_P2P_STATE_CHANGED_ACTION);
        // intentFilter.addAction(WifiP2pManager.WIFI_P2P_PEERS_CHANGED_ACTION);
        // intentFilter.addAction(WifiP2pManager.WIFI_P2P_CONNECTION_CHANGED_ACTION);
        // intentFilter.addAction(WifiP2pManager.WIFI_P2P_THIS_DEVICE_CHANGED_ACTION);
        // context.registerReceiver(mWifiP2pReceiver, intentFilter, null, mHandler);

        // ContentObserver settingsObserver = new ContentObserver(mHandler) {
            // @Override
            // public void onChange(boolean selfChange, Uri uri) {
                // updateSettings();
            // }
        // };

        // final ContentResolver resolver = mContext.getContentResolver();
        // resolver.registerContentObserver(Settings.Global.getUriFor(
                // Settings.Global.WIFI_DISPLAY_ON), false, settingsObserver);
        // resolver.registerContentObserver(Settings.Global.getUriFor(
                // Settings.Global.WIFI_DISPLAY_CERTIFICATION_ON), false, settingsObserver);
        // resolver.registerContentObserver(Settings.Global.getUriFor(
                // Settings.Global.WIFI_DISPLAY_WPS_CONFIG), false, settingsObserver);
        // updateSettings();
    }

到这里wifi的相关服务基本被干掉

觉得我写的好的兄弟 帮梦点个赞!!!谢谢 

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值