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

Commit 31911583 authored by Matt Walliser's avatar Matt Walliser
Browse files

Small changes needed to support CTS testing.

Bug: 268989471
Test: "atest android.net.wifi.sharedconnectivity.cts.SharedConnectivityTest"
Change-Id: Iac3ee235ec4aff0c90f4ea3e415e98265520c26b
parent 75619879
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -1947,12 +1947,21 @@ package android.net {
package android.net.wifi.sharedconnectivity.app {

  public class SharedConnectivityManager {
    method @Nullable public static android.net.wifi.sharedconnectivity.app.SharedConnectivityManager create(@NonNull android.content.Context, @NonNull String, @NonNull String);
    method @Nullable public android.content.ServiceConnection getServiceConnection();
    method public void setService(@Nullable android.os.IInterface);
  }

}

package android.net.wifi.sharedconnectivity.service {

  public abstract class SharedConnectivityService extends android.app.Service {
    method public void onBind();
  }

}

package android.os {

  public final class BatteryStatsManager {
+12 −0
Original line number Diff line number Diff line
@@ -19,6 +19,7 @@ package android.net.wifi.sharedconnectivity.app;
import android.annotation.CallbackExecutor;
import android.annotation.NonNull;
import android.annotation.Nullable;
import android.annotation.SuppressLint;
import android.annotation.SystemApi;
import android.annotation.TestApi;
import android.content.ComponentName;
@@ -172,6 +173,17 @@ public class SharedConnectivityManager {
        return null;
    }

    /**
     * @hide
     */
    @SuppressLint("ManagerLookup")
    @TestApi
    @Nullable
    public static SharedConnectivityManager create(@NonNull Context context,
            @NonNull String servicePackageName, @NonNull String serviceIntentAction) {
        return new SharedConnectivityManager(context, servicePackageName, serviceIntentAction);
    }

    private SharedConnectivityManager(@NonNull Context context, String servicePackageName,
            String serviceIntentAction) {
        mServiceConnection = new ServiceConnection() {
+9 −2
Original line number Diff line number Diff line
@@ -23,6 +23,7 @@ import android.annotation.NonNull;
import android.annotation.Nullable;
import android.annotation.RequiresPermission;
import android.annotation.SystemApi;
import android.annotation.TestApi;
import android.app.Service;
import android.content.Intent;
import android.content.pm.PackageManager;
@@ -90,7 +91,7 @@ public abstract class SharedConnectivityService extends Service {
    public final IBinder onBind(@NonNull Intent intent) {
        if (DEBUG) Log.i(TAG, "onBind intent=" + intent);
        mHandler = new Handler(getMainLooper());
        return new ISharedConnectivityService.Stub() {
        IBinder serviceStub = new ISharedConnectivityService.Stub() {
            @Override
            public void registerCallback(ISharedConnectivityCallback callback) {
                checkPermissions();
@@ -138,8 +139,14 @@ public abstract class SharedConnectivityService extends Service {
                }
            }
        };
        onBind(); // For CTS testing
        return serviceStub;
    }

    /** @hide */
    @TestApi
    public void onBind() {}

    private void onRegisterCallback(ISharedConnectivityCallback callback) {
        // Listener gets triggered on first register using cashed data
        if (!notifyTetherNetworkUpdate(callback) || !notifyKnownNetworkUpdate(callback)