diff options
| author | 2017-06-29 01:51:04 +0000 | |
|---|---|---|
| committer | 2017-06-29 01:51:04 +0000 | |
| commit | db8e4efd5bb60aa05cd9f581f39cd016da4fab70 (patch) | |
| tree | 1fbd5cc10544c9a9150245aa2cb2724b3f467cc7 | |
| parent | c2f33f18ebf8acc1812fba6f3ad519dedda40b5c (diff) | |
| parent | 77e6f9909a9533680f6617d05302c87f5582dc0b (diff) | |
Merge "Use Bundle for inter-process message"
| -rw-r--r-- | telephony/java/android/telephony/TelephonyScanManager.java | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/telephony/java/android/telephony/TelephonyScanManager.java b/telephony/java/android/telephony/TelephonyScanManager.java index c905d3a433f3..92a21b6fb85f 100644 --- a/telephony/java/android/telephony/TelephonyScanManager.java +++ b/telephony/java/android/telephony/TelephonyScanManager.java @@ -20,15 +20,18 @@ import static com.android.internal.util.Preconditions.checkNotNull; import android.content.Context; import android.os.Binder; +import android.os.Bundle; import android.os.Handler; import android.os.HandlerThread; import android.os.Looper; import android.os.Message; import android.os.Messenger; +import android.os.Parcelable; import android.os.RemoteException; import android.os.ServiceManager; import android.util.Log; import android.util.SparseArray; +import java.util.Arrays; import java.util.List; import com.android.internal.telephony.ITelephony; @@ -42,6 +45,9 @@ public final class TelephonyScanManager { private static final String TAG = "TelephonyScanManager"; /** @hide */ + public static final String SCAN_RESULT_KEY = "scanResult"; + + /** @hide */ public static final int CALLBACK_SCAN_RESULTS = 1; /** @hide */ public static final int CALLBACK_SCAN_ERROR = 2; @@ -112,7 +118,13 @@ public final class TelephonyScanManager { switch (message.what) { case CALLBACK_SCAN_RESULTS: try { - callback.onResults((List<CellInfo>) message.obj); + final Bundle b = message.getData(); + final Parcelable[] parcelables = b.getParcelableArray(SCAN_RESULT_KEY); + CellInfo[] ci = new CellInfo[parcelables.length]; + for (int i = 0; i < parcelables.length; i++) { + ci[i] = (CellInfo) parcelables[i]; + } + callback.onResults((List<CellInfo>) Arrays.asList(ci)); } catch (Exception e) { Rlog.e(TAG, "Exception in networkscan callback onResults", e); } |