Skip to content

Commit 7725180

Browse files
author
Robert Greenwalt
committed
Prefer the preferred APN for all types it supports
We used to only prefer it when connecting for default connection purposes, but it makes sense to use the preference for all apn types it supports. bug:6377793 Change-Id: I8b26b77fc0787121749cce9d32303ab24cc72c75
1 parent 867b96b commit 7725180

File tree

1 file changed

+14
-15
lines changed

1 file changed

+14
-15
lines changed

telephony/java/com/android/internal/telephony/gsm/GsmDataConnectionTracker.java

Lines changed: 14 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -2322,27 +2322,26 @@ private ArrayList<ApnSetting> buildWaitingApns(String requestedApnType) {
23222322
String operator = mPhone.mIccRecords.getOperatorNumeric();
23232323
int networkType = mPhone.getServiceState().getNetworkType();
23242324

2325-
if (requestedApnType.equals(Phone.APN_TYPE_DEFAULT)) {
2326-
if (canSetPreferApn && mPreferredApn != null) {
2327-
if (DBG) {
2328-
log("buildWaitingApns: Preferred APN:" + operator + ":"
2325+
if (canSetPreferApn && mPreferredApn != null &&
2326+
mPreferredApn.canHandleType(requestedApnType)) {
2327+
if (DBG) {
2328+
log("buildWaitingApns: Preferred APN:" + operator + ":"
23292329
+ mPreferredApn.numeric + ":" + mPreferredApn);
2330-
}
2331-
if (mPreferredApn.numeric.equals(operator)) {
2332-
if (mPreferredApn.bearer == 0 || mPreferredApn.bearer == networkType) {
2333-
apnList.add(mPreferredApn);
2334-
if (DBG) log("buildWaitingApns: X added preferred apnList=" + apnList);
2335-
return apnList;
2336-
} else {
2337-
if (DBG) log("buildWaitingApns: no preferred APN");
2338-
setPreferredApn(-1);
2339-
mPreferredApn = null;
2340-
}
2330+
}
2331+
if (mPreferredApn.numeric.equals(operator)) {
2332+
if (mPreferredApn.bearer == 0 || mPreferredApn.bearer == networkType) {
2333+
apnList.add(mPreferredApn);
2334+
if (DBG) log("buildWaitingApns: X added preferred apnList=" + apnList);
2335+
return apnList;
23412336
} else {
23422337
if (DBG) log("buildWaitingApns: no preferred APN");
23432338
setPreferredApn(-1);
23442339
mPreferredApn = null;
23452340
}
2341+
} else {
2342+
if (DBG) log("buildWaitingApns: no preferred APN");
2343+
setPreferredApn(-1);
2344+
mPreferredApn = null;
23462345
}
23472346
}
23482347
if (mAllApns != null) {

0 commit comments

Comments
 (0)