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

Commit ac051ae7 authored by Mike Lockwood's avatar Mike Lockwood
Browse files

Tethering: Use new ACTION_USB_STATE broadcast to monitor USB connected state



Replaces use of battery status, which will not work on devices that do not
charge over USB.

Change-Id: I1e123bb534d46b890461ddfdee24f81da5798756
Signed-off-by: default avatarMike Lockwood <lockwood@android.com>
parent ff2544c6
Loading
Loading
Loading
Loading
+5 −6
Original line number Original line Diff line number Diff line
@@ -26,13 +26,13 @@ import android.content.Intent;
import android.content.IntentFilter;
import android.content.IntentFilter;
import android.content.pm.PackageManager;
import android.content.pm.PackageManager;
import android.content.res.Resources;
import android.content.res.Resources;
import android.hardware.Usb;
import android.net.ConnectivityManager;
import android.net.ConnectivityManager;
import android.net.InterfaceConfiguration;
import android.net.InterfaceConfiguration;
import android.net.IConnectivityManager;
import android.net.IConnectivityManager;
import android.net.INetworkManagementEventObserver;
import android.net.INetworkManagementEventObserver;
import android.net.NetworkInfo;
import android.net.NetworkInfo;
import android.net.NetworkUtils;
import android.net.NetworkUtils;
import android.os.BatteryManager;
import android.os.Binder;
import android.os.Binder;
import android.os.Environment;
import android.os.Environment;
import android.os.HandlerThread;
import android.os.HandlerThread;
@@ -135,7 +135,7 @@ public class Tethering extends INetworkManagementEventObserver.Stub {


        mStateReceiver = new StateReceiver();
        mStateReceiver = new StateReceiver();
        IntentFilter filter = new IntentFilter();
        IntentFilter filter = new IntentFilter();
        filter.addAction(Intent.ACTION_BATTERY_CHANGED);
        filter.addAction(Usb.ACTION_USB_STATE);
        filter.addAction(ConnectivityManager.CONNECTIVITY_ACTION);
        filter.addAction(ConnectivityManager.CONNECTIVITY_ACTION);
        filter.addAction(Intent.ACTION_BOOT_COMPLETED);
        filter.addAction(Intent.ACTION_BOOT_COMPLETED);
        mContext.registerReceiver(mStateReceiver, filter);
        mContext.registerReceiver(mStateReceiver, filter);
@@ -424,10 +424,9 @@ public class Tethering extends INetworkManagementEventObserver.Stub {
    private class StateReceiver extends BroadcastReceiver {
    private class StateReceiver extends BroadcastReceiver {
        public void onReceive(Context content, Intent intent) {
        public void onReceive(Context content, Intent intent) {
            String action = intent.getAction();
            String action = intent.getAction();
            if (action.equals(Intent.ACTION_BATTERY_CHANGED)) {
            if (action.equals(Usb.ACTION_USB_STATE)) {
                mUsbConnected = (intent.getIntExtra(BatteryManager.EXTRA_PLUGGED, -1)
                mUsbConnected = intent.getExtras().getBoolean(Usb.USB_CONNECTED);
                        == BatteryManager.BATTERY_PLUGGED_USB);
                updateUsbStatus();
                Tethering.this.updateUsbStatus();
            } else if (action.equals(Intent.ACTION_MEDIA_SHARED)) {
            } else if (action.equals(Intent.ACTION_MEDIA_SHARED)) {
                mUsbMassStorageOff = false;
                mUsbMassStorageOff = false;
                updateUsbStatus();
                updateUsbStatus();