Skip to content

Commit 26e1e22

Browse files
yuemingwtony-mak
authored andcommitted
Update TestDpc to use new ApnSetting API.
Bug: 76453788 Test: Manually by building TestDpc and test Override Apn functionalities. Change-Id: Ia0ab02c02e65ffe4f9261c80b3c30a49bacecc41
1 parent 929daf9 commit 26e1e22

File tree

2 files changed

+22
-40
lines changed

2 files changed

+22
-40
lines changed

app/src/main/java/com/afwsamples/testdpc/policy/OverrideApnFragment.java

Lines changed: 21 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
import android.app.admin.DevicePolicyManager;
2424
import android.content.ComponentName;
2525
import android.content.Context;
26+
import android.net.Uri;
2627
import android.os.Bundle;
2728
import android.support.v14.preference.SwitchPreference;
2829
import android.support.v7.preference.Preference;
@@ -32,14 +33,13 @@
3233
import android.view.View;
3334
import android.widget.EditText;
3435
import android.widget.Toast;
36+
3537
import com.afwsamples.testdpc.DeviceAdminReceiver;
3638
import com.afwsamples.testdpc.R;
3739
import com.afwsamples.testdpc.common.BaseSearchablePolicyPreferenceFragment;
40+
3841
import java.net.InetAddress;
39-
import java.net.MalformedURLException;
40-
import java.net.URL;
4142
import java.net.UnknownHostException;
42-
import java.util.Arrays;
4343
import java.util.List;
4444

4545
@TargetApi(28)
@@ -180,18 +180,18 @@ void showInsertOverrideApnDialog() {
180180
apnName,
181181
inetAddressFromString(proxyEditText.getText().toString()),
182182
parseInt(portEditText.getText().toString(), -1),
183-
URLFromString(mmscEditText.getText().toString()),
183+
UriFromString(mmscEditText.getText().toString()),
184184
inetAddressFromString(mmsProxyEditText.getText().toString()),
185185
parseInt(mmsPortEditText.getText().toString(), -1),
186186
userEditText.getText().toString(),
187187
passwordEditText.getText().toString(),
188188
authType,
189-
Arrays.asList(parseTypes(typeEditText.getText().toString())),
190-
protocolEditText.getText().toString(),
191-
roamingProtocolEditText.getText().toString(),
189+
parseInt(typeEditText.getText().toString(), 0),
190+
parseInt(protocolEditText.getText().toString(), -1),
191+
parseInt(roamingProtocolEditText.getText().toString(), -1),
192192
enabled == 1,
193193
networkbitmask,
194-
mvnoTypeEditText.getText().toString()
194+
parseInt(mvnoTypeEditText.getText().toString(), -1)
195195
);
196196
int insertedId = mDevicePolicyManager.addOverrideApn(mAdminComponentName, apn);
197197
if (insertedId == -1) {
@@ -221,23 +221,23 @@ private int parseInt(String str, int defaultValue) {
221221
}
222222

223223
private ApnSetting makeApnSetting(String operatorNumeric, String entryName, String apnName,
224-
InetAddress proxy, int port, URL mmsc, InetAddress mmsProxy, int mmsPort,
225-
String user, String password, int authType, List<String> types, String protocol,
226-
String roamingProtocol, boolean carrierEnabled, int networkTypeBitmask,
227-
String mvnoType) {
228-
ApnSetting.Builder builder = new ApnSetting.Builder();
229-
return builder.setOperatorNumeric(operatorNumeric)
224+
InetAddress proxyAddress, int proxyPort, Uri mmsc, InetAddress mmsProxyAddress,
225+
int mmsProxyPort, String user, String password, int authType, int apnTypeBitmask,
226+
int protocol, int roamingProtocol, boolean carrierEnabled, int networkTypeBitmask,
227+
int mvnoType) {
228+
return new ApnSetting.Builder()
229+
.setOperatorNumeric(operatorNumeric)
230230
.setEntryName(entryName)
231231
.setApnName(apnName)
232-
.setProxy(proxy)
233-
.setPort(port)
232+
.setProxyAddress(proxyAddress)
233+
.setProxyPort(proxyPort)
234234
.setMmsc(mmsc)
235-
.setMmsProxy(mmsProxy)
236-
.setMmsPort(mmsPort)
235+
.setMmsProxyAddress(mmsProxyAddress)
236+
.setMmsProxyPort(mmsProxyPort)
237237
.setUser(user)
238238
.setPassword(password)
239239
.setAuthType(authType)
240-
.setTypes(types)
240+
.setApnTypeBitmask(apnTypeBitmask)
241241
.setProtocol(protocol)
242242
.setRoamingProtocol(roamingProtocol)
243243
.setCarrierEnabled(carrierEnabled)
@@ -246,14 +246,8 @@ private ApnSetting makeApnSetting(String operatorNumeric, String entryName, Stri
246246
.build();
247247
}
248248

249-
private URL URLFromString(String url) {
250-
try {
251-
return TextUtils.isEmpty(url) ? null : new URL(url);
252-
} catch (MalformedURLException e) {
253-
Log.e(LOG_TAG, "Can't parse URL from string.");
254-
showToast(R.string.apn_wrong_url);
255-
return null;
256-
}
249+
private Uri UriFromString(String uri) {
250+
return TextUtils.isEmpty(uri) ? null : Uri.parse(uri);
257251
}
258252

259253
private InetAddress inetAddressFromString(String inetAddress) {
@@ -269,18 +263,6 @@ private InetAddress inetAddressFromString(String inetAddress) {
269263
}
270264
}
271265

272-
private String[] parseTypes(String types) {
273-
String[] result;
274-
// If unset, set to DEFAULT.
275-
if (TextUtils.isEmpty(types)) {
276-
result = new String[1];
277-
result[0] = "*";
278-
} else {
279-
result = types.split(",");
280-
}
281-
return result;
282-
}
283-
284266
private void reloadEnableOverrideApnUi() {
285267
boolean enabled = mDevicePolicyManager.isOverrideApnEnabled(mAdminComponentName);
286268
if (mEnableOverrideApnPreference.isEnabled()) {

app/src/main/java/com/afwsamples/testdpc/policy/PolicyManagementFragment.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3111,7 +3111,7 @@ private void relaunchInLockTaskMode() {
31113111
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
31123112

31133113
final ActivityOptions options = ActivityOptions.makeBasic();
3114-
options.setLockTaskMode(true);
3114+
options.setLockTaskEnabled(true);
31153115

31163116
try {
31173117
startActivity(intent, options.toBundle());

0 commit comments

Comments
 (0)