summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Ying Xu <yinxu@google.com> 2017-06-28 16:47:50 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2017-06-28 16:47:50 +0000
commite5ad3821e3b981e471cb5b5bd872dcf2c65f0867 (patch)
treebd499af5862ffcc258db2be8a7160bde283e03d7
parent939171ee8bdb38ce3d31817af67d10fb98f94d94 (diff)
parent56049437095d3cb8334f667ff73061f2926b5416 (diff)
Merge "Use Bundle for inter-process message" into oc-dr1-dev
-rw-r--r--telephony/java/android/telephony/TelephonyScanManager.java14
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);
}