Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d8fed88f authored by Aaron Huang's avatar Aaron Huang
Browse files

Use bindServiceAsUser to bind PacService and ProxyService

PacService and ProxyService should be running on system user.
Use bindServiceAsUser with UserHandle.SYSTEM to start the
services.

Bug: 192114565
Test: CtsNetTestCases:PacProxyManagerTest on target aosp_cf_x86_auto
Change-Id: I88d1bfa1e482a072674f0b96dda027aa1f92d93f
parent 1a343379
Loading
Loading
Loading
Loading
+6 −5
Original line number Diff line number Diff line
@@ -34,7 +34,6 @@ import android.net.ProxyInfo;
import android.net.TrafficStats;
import android.net.Uri;
import android.os.Handler;
import android.os.HandlerExecutor;
import android.os.HandlerThread;
import android.os.IBinder;
import android.os.RemoteCallbackList;
@@ -42,6 +41,7 @@ import android.os.RemoteException;
import android.os.ServiceManager;
import android.os.SystemClock;
import android.os.SystemProperties;
import android.os.UserHandle;
import android.provider.Settings;
import android.util.Log;

@@ -357,8 +357,9 @@ public class PacProxyService extends IPacProxyManager.Stub {
                }
            }
        };
        mContext.bindService(intent, mConnection,
                Context.BIND_AUTO_CREATE | Context.BIND_NOT_FOREGROUND | Context.BIND_NOT_VISIBLE);
        mContext.bindServiceAsUser(intent, mConnection,
                Context.BIND_AUTO_CREATE | Context.BIND_NOT_FOREGROUND | Context.BIND_NOT_VISIBLE,
                UserHandle.SYSTEM);

        intent = new Intent();
        intent.setClassName(PROXY_PACKAGE, PROXY_SERVICE);
@@ -398,9 +399,9 @@ public class PacProxyService extends IPacProxyManager.Stub {
                }
            }
        };
        mContext.bindService(intent,
        mContext.bindServiceAsUser(intent, mProxyConnection,
                Context.BIND_AUTO_CREATE | Context.BIND_NOT_FOREGROUND | Context.BIND_NOT_VISIBLE,
                new HandlerExecutor(mNetThreadHandler), mProxyConnection);
                mNetThreadHandler, UserHandle.SYSTEM);
    }

    private void unbind() {