OSDN Git Service

Add Radio Tech support when search PLMN
authorRichard LIU <richardl@codeaurora.org>
Thu, 6 Aug 2015 11:24:02 +0000 (19:24 +0800)
committerLinux Build Service Account <lnxbuild@localhost>
Wed, 24 Aug 2016 14:14:26 +0000 (08:14 -0600)
Add radio technology interface when search PLMN. It works
in both cases when RIL reports radio tech or not.

Change-Id: Ia98879d9c11ed6ebc0eca3980855cdf2e9ccde8e

telephony/java/com/android/internal/telephony/OperatorInfo.java

index a29d7c1..f9f939c 100644 (file)
@@ -33,6 +33,7 @@ public class OperatorInfo implements Parcelable {
     private String mOperatorAlphaLong;
     private String mOperatorAlphaShort;
     private String mOperatorNumeric;
+    private String mRadioTech;
 
     private State mState = State.UNKNOWN;
 
@@ -57,6 +58,11 @@ public class OperatorInfo implements Parcelable {
         return mState;
     }
 
+    public String
+    getRadioTech() {
+        return mRadioTech;
+    }
+
     OperatorInfo(String operatorAlphaLong,
                 String operatorAlphaShort,
                 String operatorNumeric,
@@ -65,6 +71,14 @@ public class OperatorInfo implements Parcelable {
         mOperatorAlphaLong = operatorAlphaLong;
         mOperatorAlphaShort = operatorAlphaShort;
         mOperatorNumeric = operatorNumeric;
+        mRadioTech = "";
+        /* operatorNumeric format: PLMN+RAT or PLMN */
+        if (null != operatorNumeric) {
+            String values[] = operatorNumeric.split("\\+");
+            mOperatorNumeric = values[0];
+            if (values.length > 1)
+                mRadioTech = values[1];
+        }
 
         mState = state;
     }
@@ -108,6 +122,7 @@ public class OperatorInfo implements Parcelable {
         return "OperatorInfo " + mOperatorAlphaLong
                 + "/" + mOperatorAlphaShort
                 + "/" + mOperatorNumeric
+                + "/" + mRadioTech
                 + "/" + mState;
     }
 
@@ -132,7 +147,10 @@ public class OperatorInfo implements Parcelable {
     public void writeToParcel(Parcel dest, int flags) {
         dest.writeString(mOperatorAlphaLong);
         dest.writeString(mOperatorAlphaShort);
-        dest.writeString(mOperatorNumeric);
+        if (mRadioTech.equals(""))
+            dest.writeString(mOperatorNumeric);
+        else
+            dest.writeString(mOperatorNumeric + "+" + mRadioTech);
         dest.writeSerializable(mState);
     }