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

Commit 15b33c63 authored by Amit Mahajan's avatar Amit Mahajan Committed by android-build-merger
Browse files

Merge "Change to return phone count as 0 if voice, sms, data not supported." into nyc-dev

am: fc6a3ad8

* commit 'fc6a3ad8':
  Change to return phone count as 0 if voice, sms, data not supported.

Change-Id: Ie1a7dfe3d285669f4ba8ab1ca873842b10ca154c
parents f0212454 fc6a3ad8
Loading
Loading
Loading
Loading
+24 −1
Original line number Original line Diff line number Diff line
@@ -24,6 +24,7 @@ import android.app.ActivityThread;
import android.content.ContentResolver;
import android.content.ContentResolver;
import android.content.Context;
import android.content.Context;
import android.content.Intent;
import android.content.Intent;
import android.net.ConnectivityManager;
import android.net.Uri;
import android.net.Uri;
import android.os.BatteryStats;
import android.os.BatteryStats;
import android.os.ResultReceiver;
import android.os.ResultReceiver;
@@ -183,6 +184,7 @@ public class TelephonyManager {


    /**
    /**
     * Returns the number of phones available.
     * Returns the number of phones available.
     * Returns 0 if none of voice, sms, data is not supported
     * Returns 1 for Single standby mode (Single SIM functionality)
     * Returns 1 for Single standby mode (Single SIM functionality)
     * Returns 2 for Dual standby mode.(Dual SIM functionality)
     * Returns 2 for Dual standby mode.(Dual SIM functionality)
     */
     */
@@ -190,7 +192,28 @@ public class TelephonyManager {
        int phoneCount = 1;
        int phoneCount = 1;
        switch (getMultiSimConfiguration()) {
        switch (getMultiSimConfiguration()) {
            case UNKNOWN:
            case UNKNOWN:
                // if voice or sms or data is supported, return 1 otherwise 0
                if (isVoiceCapable() || isSmsCapable()) {
                    phoneCount = 1;
                    phoneCount = 1;
                } else {
                    // todo: try to clean this up further by getting rid of the nested conditions
                    if (mContext == null) {
                        phoneCount = 1;
                    } else {
                        // check for data support
                        ConnectivityManager cm = (ConnectivityManager)mContext.getSystemService(
                                Context.CONNECTIVITY_SERVICE);
                        if (cm == null) {
                            phoneCount = 1;
                        } else {
                            if (cm.isNetworkSupported(ConnectivityManager.TYPE_MOBILE)) {
                                phoneCount = 1;
                            } else {
                                phoneCount = 0;
                            }
                        }
                    }
                }
                break;
                break;
            case DSDS:
            case DSDS:
            case DSDA:
            case DSDA: