resolved conflicts for merge of 0a4b3fd9 to gingerbread-plus-aosp

Change-Id: I294e6e843ae028377d19c1180e0d5e9aef52897c
This commit is contained in:
Irfan Sheriff
2011-02-02 14:23:10 -08:00
4 changed files with 93 additions and 1 deletions

View File

@@ -0,0 +1,32 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
/*
** Copyright 2009, The Android Open Source Project
**
** Licensed under the Apache License, Version 2.0 (the "License");
** you may not use this file except in compliance with the License.
** You may obtain a copy of the License at
**
** http://www.apache.org/licenses/LICENSE-2.0
**
** Unless required by applicable law or agreed to in writing, software
** distributed under the License is distributed on an "AS IS" BASIS,
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
** See the License for the specific language governing permissions and
** limitations under the License.
*/
-->
<!-- These resources are around just to allow their values to be customized
for different hardware and product builds. -->
<resources>
<!-- Do not translate. Defines the slots is Two Digit Number for dialing normally not USSD -->
<string-array name="config_twoDigitNumberPattern">
<item>"92"</item>
<item>"93"</item>
<item>"94"</item>
<item>"95"</item>
<item>"96"</item>
</string-array>
</resources>

View File

@@ -0,0 +1,32 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
/*
** Copyright 2009, The Android Open Source Project
**
** Licensed under the Apache License, Version 2.0 (the "License");
** you may not use this file except in compliance with the License.
** You may obtain a copy of the License at
**
** http://www.apache.org/licenses/LICENSE-2.0
**
** Unless required by applicable law or agreed to in writing, software
** distributed under the License is distributed on an "AS IS" BASIS,
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
** See the License for the specific language governing permissions and
** limitations under the License.
*/
-->
<!-- These resources are around just to allow their values to be customized
for different hardware and product builds. -->
<resources>
<!-- Do not translate. Defines the slots is Two Digit Number for dialing normally not USSD -->
<string-array name="config_twoDigitNumberPattern">
<item>"92"</item>
<item>"93"</item>
<item>"94"</item>
<item>"95"</item>
<item>"96"</item>
</string-array>
</resources>

View File

@@ -396,4 +396,7 @@
Build.MODEL. The format string shall not be escaped. -->
<string name="config_useragentprofile_url"></string>
<!-- Do not translate. Defines the slots is Two Digit Number for dialing normally not USSD -->
<string-array name="config_twoDigitNumberPattern">
</string-array>
</resources>

View File

@@ -155,7 +155,7 @@ public final class GsmMmiCode extends Handler implements MmiCode {
static final int MATCH_GROUP_SIC = 9;
static final int MATCH_GROUP_PWD_CONFIRM = 11;
static final int MATCH_GROUP_DIALING_NUMBER = 12;
static private String[] sTwoDigitNumberPattern;
//***** Public Class methods
@@ -198,6 +198,9 @@ public final class GsmMmiCode extends Handler implements MmiCode {
ret = new GsmMmiCode(phone);
ret.poundString = dialString;
} else if (isTwoDigitShortCode(phone.getContext(), dialString)) {
//Is a country-specific exception to short codes as defined in TS 22.030, 6.5.3.2
ret = null;
} else if (isShortCode(dialString, phone)) {
// this may be a short code, as defined in TS 22.030, 6.5.3.2
ret = new GsmMmiCode(phone);
@@ -452,6 +455,28 @@ public final class GsmMmiCode extends Handler implements MmiCode {
}
static private boolean
isTwoDigitShortCode(Context context, String dialString) {
Log.d(LOG_TAG, "isTwoDigitShortCode");
if (dialString == null || dialString.length() != 2) return false;
if (sTwoDigitNumberPattern == null) {
sTwoDigitNumberPattern = context.getResources().getStringArray(
com.android.internal.R.array.config_twoDigitNumberPattern);
}
for (String dialnumber : sTwoDigitNumberPattern) {
Log.d(LOG_TAG, "Two Digit Number Pattern " + dialnumber);
if (dialString.equals(dialnumber)) {
Log.d(LOG_TAG, "Two Digit Number Pattern -true");
return true;
}
}
Log.d(LOG_TAG, "Two Digit Number Pattern -false");
return false;
}
/**
* Helper function for newFromDialString. Returns true if dialString appears
* to be a short code AND conditions are correct for it to be treated as