diff options
author | Wink Saville <wink@google.com> | 2012-06-01 14:37:21 -0700 |
---|---|---|
committer | Wink Saville <wink@google.com> | 2012-07-18 17:05:09 -0700 |
commit | 79bff2a254eb7785b2b8fb6b8b700c274105cfd9 (patch) | |
tree | 4e9b7a39eb77bb9838c7c4d421e44a7a91957e39 | |
parent | f6941bdc63776d9b65616346df18ef3734358935 (diff) | |
download | packages_apps_Settings-79bff2a254eb7785b2b8fb6b8b700c274105cfd9.tar.gz packages_apps_Settings-79bff2a254eb7785b2b8fb6b8b700c274105cfd9.tar.bz2 packages_apps_Settings-79bff2a254eb7785b2b8fb6b8b700c274105cfd9.zip |
Test getAllCellInfo and onCellInfoChanged.
Change-Id: I20164d6bb9edb2ecf178b4533a39e885773d7b22
-rw-r--r-- | res/layout/radio_info.xml | 7 | ||||
-rw-r--r-- | res/values/strings.xml | 2 | ||||
-rw-r--r-- | src/com/android/settings/RadioInfo.java | 35 |
3 files changed, 43 insertions, 1 deletions
diff --git a/res/layout/radio_info.xml b/res/layout/radio_info.xml index d9e5f4d57..a636c9cc5 100644 --- a/res/layout/radio_info.xml +++ b/res/layout/radio_info.xml @@ -84,6 +84,13 @@ <TextView android:id="@+id/neighboring" style="@style/info_value" /> </LinearLayout> + <!-- CellInfo --> + <LinearLayout style="@style/entry_layout"> + <TextView android:text="@string/radio_info_cellinfo_label" + style="@style/info_label" /> + <TextView android:id="@+id/cellinfo" style="@style/info_value" /> + </LinearLayout> + <!-- Roaming --> <LinearLayout style="@style/entry_layout"> <TextView android:text="@string/radio_info_roaming_label" style="@style/info_label" /> diff --git a/res/values/strings.xml b/res/values/strings.xml index bb66a0b62..77cc49c9e 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -420,6 +420,8 @@ <!-- Radio Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed --> <string name="radio_info_neighboring_location_label">Neighboring CID:</string> <!-- Radio Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed --> + <string name="radio_info_cellinfo_label">CellInfo:</string> + <!-- Radio Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed --> <string name="radio_info_data_attempts_label">Data attempts:</string> <!-- Radio Info screen. Label for a status item. Used for diagnostic info screens, precise translation isn't needed --> diff --git a/src/com/android/settings/RadioInfo.java b/src/com/android/settings/RadioInfo.java index 5ba383782..d72508a84 100644 --- a/src/com/android/settings/RadioInfo.java +++ b/src/com/android/settings/RadioInfo.java @@ -33,6 +33,7 @@ import android.os.Message; import android.os.RemoteException; import android.os.ServiceManager; import android.os.SystemProperties; +import android.telephony.CellInfo; import android.telephony.CellLocation; import android.telephony.PhoneStateListener; import android.telephony.ServiceState; @@ -111,6 +112,7 @@ public class RadioInfo extends Activity { private TextView mCfi; private TextView mLocation; private TextView mNeighboringCids; + private TextView mCellInfo; private TextView resets; private TextView attempts; private TextView successes; @@ -140,6 +142,7 @@ public class RadioInfo extends Activity { private String mHttpClientTestResult; private boolean mMwiValue = false; private boolean mCfiValue = false; + private List<CellInfo> mCellInfoValue; private PhoneStateListener mPhoneStateListener = new PhoneStateListener() { @Override @@ -171,6 +174,13 @@ public class RadioInfo extends Activity { mCfiValue = cfi; updateCallRedirect(); } + + @Override + public void onCellInfoChanged(List<CellInfo> arrayCi) { + Log.d(TAG, "[RadioInfo] onCellInfoChanged: arrayCi=" + arrayCi); + mCellInfoValue = arrayCi; + updateCellInfoTv(); + } }; private Handler mHandler = new Handler() { @@ -263,6 +273,7 @@ public class RadioInfo extends Activity { mCfi = (TextView) findViewById(R.id.cfi); mLocation = (TextView) findViewById(R.id.location); mNeighboringCids = (TextView) findViewById(R.id.neighboring); + mCellInfo = (TextView) findViewById(R.id.cellinfo); resets = (TextView) findViewById(R.id.resets); attempts = (TextView) findViewById(R.id.attempts); @@ -326,6 +337,10 @@ public class RadioInfo extends Activity { mHandler.obtainMessage(EVENT_QUERY_NEIGHBORING_CIDS_DONE)); CellLocation.requestLocationUpdate(); + + // Get current cell info + mCellInfoValue = mTelephonyManager.getAllCellInfo(); + Log.d(TAG, "[RadioInfo] onCreate: mCellInfoValue=" + mCellInfoValue); } @Override @@ -356,7 +371,8 @@ public class RadioInfo extends Activity { | PhoneStateListener.LISTEN_DATA_ACTIVITY | PhoneStateListener.LISTEN_CELL_LOCATION | PhoneStateListener.LISTEN_MESSAGE_WAITING_INDICATOR - | PhoneStateListener.LISTEN_CALL_FORWARDING_INDICATOR); + | PhoneStateListener.LISTEN_CALL_FORWARDING_INDICATOR + | PhoneStateListener.LISTEN_CELL_INFO); } @Override @@ -508,6 +524,23 @@ public class RadioInfo extends Activity { mNeighboringCids.setText(sb.toString()); } + private final void updateCellInfoTv() { + StringBuilder value = new StringBuilder(); + if (mCellInfoValue != null) { + int index = 0; + for (CellInfo ci : mCellInfoValue) { + value.append('['); + value.append(index); + value.append("]="); + value.append(ci.toString()); + if (++index < mCellInfoValue.size()) { + value.append("\n"); + } + } + } + mCellInfo.setText(value.toString()); + } + private final void updateMessageWaiting() { mMwi.setText(String.valueOf(mMwiValue)); |