appium-adb 14.0.4 → 14.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +12 -0
- package/build/lib/tools/apk-utils.d.ts +44 -67
- package/build/lib/tools/apk-utils.d.ts.map +1 -1
- package/build/lib/tools/apk-utils.js +74 -76
- package/build/lib/tools/apk-utils.js.map +1 -1
- package/build/lib/tools/app-commands.d.ts +125 -150
- package/build/lib/tools/app-commands.d.ts.map +1 -1
- package/build/lib/tools/app-commands.js +194 -234
- package/build/lib/tools/app-commands.js.map +1 -1
- package/build/lib/tools/device-settings.d.ts +103 -142
- package/build/lib/tools/device-settings.d.ts.map +1 -1
- package/build/lib/tools/device-settings.js +84 -124
- package/build/lib/tools/device-settings.js.map +1 -1
- package/lib/tools/{apk-utils.js → apk-utils.ts} +118 -105
- package/lib/tools/{app-commands.js → app-commands.ts} +279 -294
- package/lib/tools/{device-settings.js → device-settings.ts} +136 -172
- package/package.json +1 -1
|
@@ -61,28 +61,26 @@ const HIDDEN_API_POLICY_KEYS = [
|
|
|
61
61
|
/**
|
|
62
62
|
* Get the particular property of the device under test.
|
|
63
63
|
*
|
|
64
|
-
* @
|
|
65
|
-
* @param {string} property - The name of the property. This name should
|
|
64
|
+
* @param property - The name of the property. This name should
|
|
66
65
|
* be known to _adb shell getprop_ tool.
|
|
67
66
|
*
|
|
68
|
-
* @
|
|
67
|
+
* @returns The value of the given property.
|
|
69
68
|
*/
|
|
70
69
|
async function getDeviceProperty(property) {
|
|
71
|
-
|
|
72
|
-
|
|
70
|
+
const stdout = await this.shell(['getprop', property]);
|
|
71
|
+
const val = stdout.trim();
|
|
73
72
|
logger_js_1.log.debug(`Current device property '${property}': ${val}`);
|
|
74
73
|
return val;
|
|
75
74
|
}
|
|
76
75
|
/**
|
|
77
76
|
* Set the particular property of the device under test.
|
|
78
77
|
*
|
|
79
|
-
* @
|
|
80
|
-
* @param {string} prop - The name of the property. This name should
|
|
78
|
+
* @param prop - The name of the property. This name should
|
|
81
79
|
* be known to _adb shell setprop_ tool.
|
|
82
|
-
* @param
|
|
83
|
-
* @param
|
|
80
|
+
* @param val - The new property value.
|
|
81
|
+
* @param opts
|
|
84
82
|
*
|
|
85
|
-
* @throws
|
|
83
|
+
* @throws If _setprop_ utility fails to change property value.
|
|
86
84
|
*/
|
|
87
85
|
async function setDeviceProperty(prop, val, opts = {}) {
|
|
88
86
|
const { privileged = true } = opts;
|
|
@@ -92,57 +90,49 @@ async function setDeviceProperty(prop, val, opts = {}) {
|
|
|
92
90
|
});
|
|
93
91
|
}
|
|
94
92
|
/**
|
|
95
|
-
* @
|
|
96
|
-
* @return {Promise<string>} Current system language on the device under test.
|
|
93
|
+
* @returns Current system language on the device under test.
|
|
97
94
|
*/
|
|
98
95
|
async function getDeviceSysLanguage() {
|
|
99
96
|
return await this.getDeviceProperty('persist.sys.language');
|
|
100
97
|
}
|
|
101
98
|
/**
|
|
102
|
-
* @
|
|
103
|
-
* @return {Promise<string>} Current country name on the device under test.
|
|
99
|
+
* @returns Current country name on the device under test.
|
|
104
100
|
*/
|
|
105
101
|
async function getDeviceSysCountry() {
|
|
106
102
|
return await this.getDeviceProperty('persist.sys.country');
|
|
107
103
|
}
|
|
108
104
|
/**
|
|
109
|
-
* @
|
|
110
|
-
* @return {Promise<string>} Current system locale name on the device under test.
|
|
105
|
+
* @returns Current system locale name on the device under test.
|
|
111
106
|
*/
|
|
112
107
|
async function getDeviceSysLocale() {
|
|
113
108
|
return await this.getDeviceProperty('persist.sys.locale');
|
|
114
109
|
}
|
|
115
110
|
/**
|
|
116
|
-
* @
|
|
117
|
-
* @return {Promise<string>} Current product language name on the device under test.
|
|
111
|
+
* @returns Current product language name on the device under test.
|
|
118
112
|
*/
|
|
119
113
|
async function getDeviceProductLanguage() {
|
|
120
114
|
return await this.getDeviceProperty('ro.product.locale.language');
|
|
121
115
|
}
|
|
122
116
|
/**
|
|
123
|
-
* @
|
|
124
|
-
* @return {Promise<string>} Current product country name on the device under test.
|
|
117
|
+
* @returns Current product country name on the device under test.
|
|
125
118
|
*/
|
|
126
119
|
async function getDeviceProductCountry() {
|
|
127
120
|
return await this.getDeviceProperty('ro.product.locale.region');
|
|
128
121
|
}
|
|
129
122
|
/**
|
|
130
|
-
* @
|
|
131
|
-
* @return {Promise<string>} Current product locale name on the device under test.
|
|
123
|
+
* @returns Current product locale name on the device under test.
|
|
132
124
|
*/
|
|
133
125
|
async function getDeviceProductLocale() {
|
|
134
126
|
return await this.getDeviceProperty('ro.product.locale');
|
|
135
127
|
}
|
|
136
128
|
/**
|
|
137
|
-
* @
|
|
138
|
-
* @return {Promise<string>} The model name of the device under test.
|
|
129
|
+
* @returns The model name of the device under test.
|
|
139
130
|
*/
|
|
140
131
|
async function getModel() {
|
|
141
132
|
return await this.getDeviceProperty('ro.product.model');
|
|
142
133
|
}
|
|
143
134
|
/**
|
|
144
|
-
* @
|
|
145
|
-
* @return {Promise<string>} The manufacturer name of the device under test.
|
|
135
|
+
* @returns The manufacturer name of the device under test.
|
|
146
136
|
*/
|
|
147
137
|
async function getManufacturer() {
|
|
148
138
|
return await this.getDeviceProperty('ro.product.manufacturer');
|
|
@@ -150,13 +140,12 @@ async function getManufacturer() {
|
|
|
150
140
|
/**
|
|
151
141
|
* Get the current screen size.
|
|
152
142
|
*
|
|
153
|
-
* @
|
|
154
|
-
* @return {Promise<string?>} Device screen size as string in format 'WxH' or
|
|
143
|
+
* @returns Device screen size as string in format 'WxH' or
|
|
155
144
|
* _null_ if it cannot be determined.
|
|
156
145
|
*/
|
|
157
146
|
async function getScreenSize() {
|
|
158
|
-
|
|
159
|
-
|
|
147
|
+
const stdout = await this.shell(['wm', 'size']);
|
|
148
|
+
const size = new RegExp(/Physical size: ([^\r?\n]+)*/g).exec(stdout);
|
|
160
149
|
if (size && size.length >= 2) {
|
|
161
150
|
return size[1].trim();
|
|
162
151
|
}
|
|
@@ -165,15 +154,14 @@ async function getScreenSize() {
|
|
|
165
154
|
/**
|
|
166
155
|
* Get the current screen density in dpi
|
|
167
156
|
*
|
|
168
|
-
* @
|
|
169
|
-
* @return {Promise<number?>} Device screen density as a number or _null_ if it
|
|
157
|
+
* @returns Device screen density as a number or _null_ if it
|
|
170
158
|
* cannot be determined
|
|
171
159
|
*/
|
|
172
160
|
async function getScreenDensity() {
|
|
173
|
-
|
|
174
|
-
|
|
161
|
+
const stdout = await this.shell(['wm', 'density']);
|
|
162
|
+
const density = new RegExp(/Physical density: ([^\r?\n]+)*/g).exec(stdout);
|
|
175
163
|
if (density && density.length >= 2) {
|
|
176
|
-
|
|
164
|
+
const densityNumber = parseInt(density[1].trim(), 10);
|
|
177
165
|
return isNaN(densityNumber) ? null : densityNumber;
|
|
178
166
|
}
|
|
179
167
|
return null;
|
|
@@ -182,12 +170,11 @@ async function getScreenDensity() {
|
|
|
182
170
|
* Setup HTTP proxy in device global settings.
|
|
183
171
|
* Read https://android.googlesource.com/platform/frameworks/base/+/android-9.0.0_r21/core/java/android/provider/Settings.java for each property
|
|
184
172
|
*
|
|
185
|
-
* @
|
|
186
|
-
* @param
|
|
187
|
-
* @param {string|number} proxyPort - The port number to be set.
|
|
173
|
+
* @param proxyHost - The host name of the proxy.
|
|
174
|
+
* @param proxyPort - The port number to be set.
|
|
188
175
|
*/
|
|
189
176
|
async function setHttpProxy(proxyHost, proxyPort) {
|
|
190
|
-
|
|
177
|
+
const proxy = `${proxyHost}:${proxyPort}`;
|
|
191
178
|
if (lodash_1.default.isUndefined(proxyHost)) {
|
|
192
179
|
throw new Error(`Call to setHttpProxy method with undefined proxy_host: ${proxy}`);
|
|
193
180
|
}
|
|
@@ -207,7 +194,6 @@ async function setHttpProxy(proxyHost, proxyPort) {
|
|
|
207
194
|
/**
|
|
208
195
|
* Delete HTTP proxy in device global settings.
|
|
209
196
|
* Rebooting the test device is necessary to apply the change.
|
|
210
|
-
* @this {import('../adb.js').ADB}
|
|
211
197
|
*/
|
|
212
198
|
async function deleteHttpProxy() {
|
|
213
199
|
const httpProxySettins = [
|
|
@@ -224,11 +210,10 @@ async function deleteHttpProxy() {
|
|
|
224
210
|
* Set device property.
|
|
225
211
|
* [android.provider.Settings]{@link https://developer.android.com/reference/android/provider/Settings.html}
|
|
226
212
|
*
|
|
227
|
-
* @
|
|
228
|
-
* @param
|
|
229
|
-
* @param
|
|
230
|
-
* @
|
|
231
|
-
* @return {Promise<string>} command output.
|
|
213
|
+
* @param namespace - one of {system, secure, global}, case-insensitive.
|
|
214
|
+
* @param setting - property name.
|
|
215
|
+
* @param value - property value.
|
|
216
|
+
* @returns command output.
|
|
232
217
|
*/
|
|
233
218
|
async function setSetting(namespace, setting, value) {
|
|
234
219
|
return await this.shell(['settings', 'put', namespace, setting, `${value}`]);
|
|
@@ -237,10 +222,9 @@ async function setSetting(namespace, setting, value) {
|
|
|
237
222
|
* Get device property.
|
|
238
223
|
* [android.provider.Settings]{@link https://developer.android.com/reference/android/provider/Settings.html}
|
|
239
224
|
*
|
|
240
|
-
* @
|
|
241
|
-
* @param
|
|
242
|
-
* @
|
|
243
|
-
* @return {Promise<string>} property value.
|
|
225
|
+
* @param namespace - one of {system, secure, global}, case-insensitive.
|
|
226
|
+
* @param setting - property name.
|
|
227
|
+
* @returns property value.
|
|
244
228
|
*/
|
|
245
229
|
async function getSetting(namespace, setting) {
|
|
246
230
|
return await this.shell(['settings', 'get', namespace, setting]);
|
|
@@ -248,9 +232,8 @@ async function getSetting(namespace, setting) {
|
|
|
248
232
|
/**
|
|
249
233
|
* Get tz database time zone formatted timezone
|
|
250
234
|
*
|
|
251
|
-
* @
|
|
252
|
-
* @
|
|
253
|
-
* @throws {Error} If any exception is reported by adb shell.
|
|
235
|
+
* @returns TZ database Time Zones format
|
|
236
|
+
* @throws If any exception is reported by adb shell.
|
|
254
237
|
*/
|
|
255
238
|
async function getTimeZone() {
|
|
256
239
|
logger_js_1.log.debug('Getting current timezone');
|
|
@@ -258,14 +241,14 @@ async function getTimeZone() {
|
|
|
258
241
|
return await this.getDeviceProperty('persist.sys.timezone');
|
|
259
242
|
}
|
|
260
243
|
catch (e) {
|
|
261
|
-
|
|
244
|
+
const err = e;
|
|
245
|
+
throw new Error(`Error getting timezone. Original error: ${err.message}`);
|
|
262
246
|
}
|
|
263
247
|
}
|
|
264
248
|
/**
|
|
265
249
|
* Retrieve the platform version of the device under test.
|
|
266
250
|
*
|
|
267
|
-
* @
|
|
268
|
-
* @return {Promise<string>} The platform version as a string, for example '5.0' for
|
|
251
|
+
* @returns The platform version as a string, for example '5.0' for
|
|
269
252
|
* Android Lollipop.
|
|
270
253
|
*/
|
|
271
254
|
async function getPlatformVersion() {
|
|
@@ -274,15 +257,15 @@ async function getPlatformVersion() {
|
|
|
274
257
|
return await this.getDeviceProperty('ro.build.version.release');
|
|
275
258
|
}
|
|
276
259
|
catch (e) {
|
|
260
|
+
const err = e;
|
|
277
261
|
throw new Error(`Error getting device platform version. ` +
|
|
278
|
-
`Original error: ${
|
|
262
|
+
`Original error: ${err.message}`);
|
|
279
263
|
}
|
|
280
264
|
}
|
|
281
265
|
/**
|
|
282
266
|
* Retrieve the list of location providers for the device under test.
|
|
283
267
|
*
|
|
284
|
-
* @
|
|
285
|
-
* @return {Promise<string[]>} The list of available location providers or an empty list.
|
|
268
|
+
* @returns The list of available location providers or an empty list.
|
|
286
269
|
*/
|
|
287
270
|
async function getLocationProviders() {
|
|
288
271
|
if (await this.getApiLevel() < 31) {
|
|
@@ -300,8 +283,7 @@ async function getLocationProviders() {
|
|
|
300
283
|
/**
|
|
301
284
|
* Toggle the state of GPS location provider.
|
|
302
285
|
*
|
|
303
|
-
* @
|
|
304
|
-
* @param {boolean} enabled - Whether to enable (true) or disable (false) the GPS provider.
|
|
286
|
+
* @param enabled - Whether to enable (true) or disable (false) the GPS provider.
|
|
305
287
|
*/
|
|
306
288
|
async function toggleGPSLocationProvider(enabled) {
|
|
307
289
|
if (await this.getApiLevel() < 31) {
|
|
@@ -314,8 +296,8 @@ async function toggleGPSLocationProvider(enabled) {
|
|
|
314
296
|
/**
|
|
315
297
|
* Decorates an exception message with a solution link
|
|
316
298
|
*
|
|
317
|
-
* @param
|
|
318
|
-
* @returns
|
|
299
|
+
* @param e The error object to be decorated
|
|
300
|
+
* @returns Either the same error or the decorated one
|
|
319
301
|
*/
|
|
320
302
|
function decorateWriteSecureSettingsException(e) {
|
|
321
303
|
if (lodash_1.default.includes(e.message, 'requires:android.permission.WRITE_SECURE_SETTINGS')) {
|
|
@@ -327,8 +309,7 @@ function decorateWriteSecureSettingsException(e) {
|
|
|
327
309
|
* Set hidden api policy to manage access to non-SDK APIs.
|
|
328
310
|
* https://developer.android.com/preview/restrictions-non-sdk-interfaces
|
|
329
311
|
*
|
|
330
|
-
* @
|
|
331
|
-
* @param {number|string} value - The API enforcement policy.
|
|
312
|
+
* @param value - The API enforcement policy.
|
|
332
313
|
* For Android P
|
|
333
314
|
* 0: Disable non-SDK API usage detection. This will also disable logging, and also break the strict mode API,
|
|
334
315
|
* detectNonSdkApiUsage(). Not recommended.
|
|
@@ -346,8 +327,8 @@ function decorateWriteSecureSettingsException(e) {
|
|
|
346
327
|
* 2: Disallow usage of non-SDK interfaces that belong to either the black list
|
|
347
328
|
* or to a restricted greylist for your target API level.
|
|
348
329
|
*
|
|
349
|
-
* @param
|
|
350
|
-
* @throws
|
|
330
|
+
* @param ignoreError - Whether to ignore an exception in 'adb shell settings put global' command
|
|
331
|
+
* @throws If there was an error and ignoreError was true while executing 'adb shell settings put global'
|
|
351
332
|
* command on the device under test.
|
|
352
333
|
*/
|
|
353
334
|
async function setHiddenApiPolicy(value, ignoreError = false) {
|
|
@@ -355,7 +336,7 @@ async function setHiddenApiPolicy(value, ignoreError = false) {
|
|
|
355
336
|
await this.shell(HIDDEN_API_POLICY_KEYS.map((k) => `settings put global ${k} ${value}`).join(';'));
|
|
356
337
|
}
|
|
357
338
|
catch (e) {
|
|
358
|
-
const err =
|
|
339
|
+
const err = e;
|
|
359
340
|
if (!ignoreError) {
|
|
360
341
|
throw decorateWriteSecureSettingsException(err);
|
|
361
342
|
}
|
|
@@ -367,9 +348,8 @@ async function setHiddenApiPolicy(value, ignoreError = false) {
|
|
|
367
348
|
* Reset access to non-SDK APIs to its default setting.
|
|
368
349
|
* https://developer.android.com/preview/restrictions-non-sdk-interfaces
|
|
369
350
|
*
|
|
370
|
-
* @
|
|
371
|
-
* @
|
|
372
|
-
* @throws {error} If there was an error and ignoreError was true while executing 'adb shell settings delete global'
|
|
351
|
+
* @param ignoreError - Whether to ignore an exception in 'adb shell settings delete global' command
|
|
352
|
+
* @throws If there was an error and ignoreError was true while executing 'adb shell settings delete global'
|
|
373
353
|
* command on the device under test.
|
|
374
354
|
*/
|
|
375
355
|
async function setDefaultHiddenApiPolicy(ignoreError = false) {
|
|
@@ -377,7 +357,7 @@ async function setDefaultHiddenApiPolicy(ignoreError = false) {
|
|
|
377
357
|
await this.shell(HIDDEN_API_POLICY_KEYS.map((k) => `settings delete global ${k}`).join(';'));
|
|
378
358
|
}
|
|
379
359
|
catch (e) {
|
|
380
|
-
const err =
|
|
360
|
+
const err = e;
|
|
381
361
|
if (!ignoreError) {
|
|
382
362
|
throw decorateWriteSecureSettingsException(err);
|
|
383
363
|
}
|
|
@@ -387,8 +367,7 @@ async function setDefaultHiddenApiPolicy(ignoreError = false) {
|
|
|
387
367
|
/**
|
|
388
368
|
* Get the language name of the device under test.
|
|
389
369
|
*
|
|
390
|
-
* @
|
|
391
|
-
* @return {Promise<string>} The name of device language.
|
|
370
|
+
* @returns The name of device language.
|
|
392
371
|
*/
|
|
393
372
|
async function getDeviceLanguage() {
|
|
394
373
|
return await this.getApiLevel() < 23
|
|
@@ -399,8 +378,7 @@ async function getDeviceLanguage() {
|
|
|
399
378
|
* Get the country name of the device under test.
|
|
400
379
|
*
|
|
401
380
|
* @summary Could only be used for Android API < 23
|
|
402
|
-
* @
|
|
403
|
-
* @return {Promise<string>} The name of device country.
|
|
381
|
+
* @returns The name of device country.
|
|
404
382
|
*/
|
|
405
383
|
async function getDeviceCountry() {
|
|
406
384
|
return await this.getDeviceSysCountry() || await this.getDeviceProductCountry();
|
|
@@ -409,8 +387,7 @@ async function getDeviceCountry() {
|
|
|
409
387
|
* Get the locale name of the device under test.
|
|
410
388
|
*
|
|
411
389
|
* @summary Could only be used for Android API >= 23
|
|
412
|
-
* @
|
|
413
|
-
* @return {Promise<string>} The name of device locale.
|
|
390
|
+
* @returns The name of device locale.
|
|
414
391
|
*/
|
|
415
392
|
async function getDeviceLocale() {
|
|
416
393
|
return await this.getDeviceSysLocale() || await this.getDeviceProductLocale();
|
|
@@ -418,13 +395,12 @@ async function getDeviceLocale() {
|
|
|
418
395
|
/**
|
|
419
396
|
* Make sure current device locale is expected or not.
|
|
420
397
|
*
|
|
421
|
-
* @this {import('../adb.js').ADB}
|
|
422
398
|
* @privateRemarks FIXME: language or country is required
|
|
423
|
-
* @param
|
|
424
|
-
* @param
|
|
425
|
-
* @param
|
|
399
|
+
* @param language - Language. The language field is case insensitive, but Locale always canonicalizes to lower case.
|
|
400
|
+
* @param country - Country. The language field is case insensitive, but Locale always canonicalizes to lower case.
|
|
401
|
+
* @param script - Script. The script field is case insensitive but Locale always canonicalizes to title case.
|
|
426
402
|
*
|
|
427
|
-
* @
|
|
403
|
+
* @returns If current locale is language and country as arguments, return true.
|
|
428
404
|
*/
|
|
429
405
|
async function ensureCurrentLocale(language, country, script) {
|
|
430
406
|
const hasLanguage = lodash_1.default.isString(language);
|
|
@@ -436,7 +412,7 @@ async function ensureCurrentLocale(language, country, script) {
|
|
|
436
412
|
const lcLanguage = (language || '').toLowerCase();
|
|
437
413
|
const lcCountry = (country || '').toLowerCase();
|
|
438
414
|
const apiLevel = await this.getApiLevel();
|
|
439
|
-
return
|
|
415
|
+
return (await (0, asyncbox_1.retryInterval)(5, 1000, async () => {
|
|
440
416
|
if (apiLevel < 23) {
|
|
441
417
|
logger_js_1.log.debug(`Requested locale: ${lcLanguage}-${lcCountry}`);
|
|
442
418
|
let actualLanguage;
|
|
@@ -464,7 +440,7 @@ async function ensureCurrentLocale(language, country, script) {
|
|
|
464
440
|
: `${lcLanguage}-${lcCountry}`;
|
|
465
441
|
logger_js_1.log.debug(`Requested locale: ${expectedLocale}. Actual locale: '${actualLocale}'`);
|
|
466
442
|
const languagePattern = `^${lodash_1.default.escapeRegExp(lcLanguage)}-${script ? (lodash_1.default.escapeRegExp(script) + '-') : ''}`;
|
|
467
|
-
const checkLocalePattern = (
|
|
443
|
+
const checkLocalePattern = (p) => new RegExp(p, 'i').test(actualLocale);
|
|
468
444
|
if (hasLanguage && !hasCountry) {
|
|
469
445
|
return checkLocalePattern(languagePattern);
|
|
470
446
|
}
|
|
@@ -473,15 +449,14 @@ async function ensureCurrentLocale(language, country, script) {
|
|
|
473
449
|
return checkLocalePattern(countryPattern);
|
|
474
450
|
}
|
|
475
451
|
return [languagePattern, countryPattern].every(checkLocalePattern);
|
|
476
|
-
}));
|
|
452
|
+
})) ?? false;
|
|
477
453
|
}
|
|
478
454
|
/**
|
|
479
455
|
* Change the state of WiFi on the device under test.
|
|
480
456
|
* Only works for real devices since API 30
|
|
481
457
|
*
|
|
482
|
-
* @
|
|
483
|
-
* @param
|
|
484
|
-
* @param {boolean} [isEmulator=false] - Set it to true if the device under test
|
|
458
|
+
* @param on - True to enable and false to disable it.
|
|
459
|
+
* @param isEmulator - Set it to true if the device under test
|
|
485
460
|
* is an emulator rather than a real device.
|
|
486
461
|
*/
|
|
487
462
|
async function setWifiState(on, isEmulator = false) {
|
|
@@ -498,9 +473,8 @@ async function setWifiState(on, isEmulator = false) {
|
|
|
498
473
|
* Change the state of Data transfer on the device under test.
|
|
499
474
|
* Only works for real devices since API 30
|
|
500
475
|
*
|
|
501
|
-
* @
|
|
502
|
-
* @param
|
|
503
|
-
* @param {boolean} [isEmulator=false] - Set it to true if the device under test
|
|
476
|
+
* @param on - True to enable and false to disable it.
|
|
477
|
+
* @param isEmulator - Set it to true if the device under test
|
|
504
478
|
* is an emulator rather than a real device.
|
|
505
479
|
*/
|
|
506
480
|
async function setDataState(on, isEmulator = false) {
|
|
@@ -516,8 +490,7 @@ async function setDataState(on, isEmulator = false) {
|
|
|
516
490
|
/**
|
|
517
491
|
* Retrieves the list of packages from Doze whitelist on Android 8+
|
|
518
492
|
*
|
|
519
|
-
* @
|
|
520
|
-
* @returns {Promise<string[]>} The list of whitelisted packages. An example output:
|
|
493
|
+
* @returns The list of whitelisted packages. An example output:
|
|
521
494
|
* system,com.android.shell,2000
|
|
522
495
|
* system,com.google.android.cellbroadcastreceiver,10143
|
|
523
496
|
* user,io.appium.settings,10157
|
|
@@ -536,12 +509,11 @@ async function getDeviceIdleWhitelist() {
|
|
|
536
509
|
/**
|
|
537
510
|
* Adds an existing package(s) into the Doze whitelist on Android 8+
|
|
538
511
|
*
|
|
539
|
-
* @
|
|
540
|
-
* @param {...string} packages One or more packages to add. If the package
|
|
512
|
+
* @param packages One or more packages to add. If the package
|
|
541
513
|
* already exists in the whitelist then it is only going to be added once.
|
|
542
514
|
* If the package with the given name is not installed/not known then an error
|
|
543
515
|
* will be thrown.
|
|
544
|
-
* @returns
|
|
516
|
+
* @returns `true` if the command to add package(s) has been executed
|
|
545
517
|
*/
|
|
546
518
|
async function addToDeviceIdleWhitelist(...packages) {
|
|
547
519
|
if (lodash_1.default.isEmpty(packages) || await this.getApiLevel() < 23) {
|
|
@@ -555,8 +527,7 @@ async function addToDeviceIdleWhitelist(...packages) {
|
|
|
555
527
|
/**
|
|
556
528
|
* Check the state of Airplane mode on the device under test.
|
|
557
529
|
*
|
|
558
|
-
* @
|
|
559
|
-
* @return {Promise<boolean>} True if Airplane mode is enabled.
|
|
530
|
+
* @returns True if Airplane mode is enabled.
|
|
560
531
|
*/
|
|
561
532
|
async function isAirplaneModeOn() {
|
|
562
533
|
const stdout = await this.getSetting('global', 'airplane_mode_on');
|
|
@@ -567,8 +538,7 @@ async function isAirplaneModeOn() {
|
|
|
567
538
|
/**
|
|
568
539
|
* Change the state of Airplane mode in Settings on the device under test.
|
|
569
540
|
*
|
|
570
|
-
* @
|
|
571
|
-
* @param {boolean} on - True to enable the Airplane mode in Settings and false to disable it.
|
|
541
|
+
* @param on - True to enable the Airplane mode in Settings and false to disable it.
|
|
572
542
|
*/
|
|
573
543
|
async function setAirplaneMode(on) {
|
|
574
544
|
if (await this.getApiLevel() < 30) {
|
|
@@ -581,8 +551,7 @@ async function setAirplaneMode(on) {
|
|
|
581
551
|
/**
|
|
582
552
|
* Change the state of the bluetooth service on the device under test.
|
|
583
553
|
*
|
|
584
|
-
* @
|
|
585
|
-
* @param {boolean} on - True to enable bluetooth service and false to disable it.
|
|
554
|
+
* @param on - True to enable bluetooth service and false to disable it.
|
|
586
555
|
*/
|
|
587
556
|
async function setBluetoothOn(on) {
|
|
588
557
|
if (await this.getApiLevel() < 30) {
|
|
@@ -593,9 +562,8 @@ async function setBluetoothOn(on) {
|
|
|
593
562
|
/**
|
|
594
563
|
* Change the state of the NFC service on the device under test.
|
|
595
564
|
*
|
|
596
|
-
* @
|
|
597
|
-
* @
|
|
598
|
-
* @throws {Error} If there was an error while changing the service state
|
|
565
|
+
* @param on - True to enable NFC service and false to disable it.
|
|
566
|
+
* @throws If there was an error while changing the service state
|
|
599
567
|
*/
|
|
600
568
|
async function setNfcOn(on) {
|
|
601
569
|
const { stdout, stderr } = await this.shell(['svc', 'nfc', on ? 'enable' : 'disable'], {
|
|
@@ -615,8 +583,7 @@ async function setNfcOn(on) {
|
|
|
615
583
|
* there is a dedicated adb command to change airplane mode state, which
|
|
616
584
|
* does not require to call this one afterwards.
|
|
617
585
|
*
|
|
618
|
-
* @
|
|
619
|
-
* @param {boolean} on - True to broadcast enable and false to broadcast disable.
|
|
586
|
+
* @param on - True to broadcast enable and false to broadcast disable.
|
|
620
587
|
*/
|
|
621
588
|
async function broadcastAirplaneMode(on) {
|
|
622
589
|
const args = [
|
|
@@ -628,7 +595,7 @@ async function broadcastAirplaneMode(on) {
|
|
|
628
595
|
await this.shell(args);
|
|
629
596
|
}
|
|
630
597
|
catch (e) {
|
|
631
|
-
const err =
|
|
598
|
+
const err = e;
|
|
632
599
|
// https://github.com/appium/appium/issues/17422
|
|
633
600
|
if (lodash_1.default.includes(err.stderr, 'SecurityException')) {
|
|
634
601
|
try {
|
|
@@ -643,8 +610,7 @@ async function broadcastAirplaneMode(on) {
|
|
|
643
610
|
/**
|
|
644
611
|
* Check the state of WiFi on the device under test.
|
|
645
612
|
*
|
|
646
|
-
* @
|
|
647
|
-
* @return {Promise<boolean>} True if WiFi is enabled.
|
|
613
|
+
* @returns True if WiFi is enabled.
|
|
648
614
|
*/
|
|
649
615
|
async function isWifiOn() {
|
|
650
616
|
const stdout = await this.getSetting('global', 'wifi_on');
|
|
@@ -655,8 +621,7 @@ async function isWifiOn() {
|
|
|
655
621
|
/**
|
|
656
622
|
* Check the state of Data transfer on the device under test.
|
|
657
623
|
*
|
|
658
|
-
* @
|
|
659
|
-
* @return {Promise<boolean>} True if Data transfer is enabled.
|
|
624
|
+
* @returns True if Data transfer is enabled.
|
|
660
625
|
*/
|
|
661
626
|
async function isDataOn() {
|
|
662
627
|
const stdout = await this.getSetting('global', 'mobile_data');
|
|
@@ -668,8 +633,7 @@ async function isDataOn() {
|
|
|
668
633
|
* - transition_animation_scale
|
|
669
634
|
* - window_animation_scale
|
|
670
635
|
*
|
|
671
|
-
* @
|
|
672
|
-
* @return {Promise<boolean>} True if at least one of animation scale settings
|
|
636
|
+
* @returns True if at least one of animation scale settings
|
|
673
637
|
* is not equal to '0.0'.
|
|
674
638
|
*/
|
|
675
639
|
async function isAnimationOn() {
|
|
@@ -684,13 +648,11 @@ async function isAnimationOn() {
|
|
|
684
648
|
* API level 28+ real devices checked this worked, but we haven't checked older ones
|
|
685
649
|
* with real devices.
|
|
686
650
|
*
|
|
687
|
-
* @
|
|
688
|
-
* @param {number} value Animation scale value (int or float) to set.
|
|
651
|
+
* @param value Animation scale value (int or float) to set.
|
|
689
652
|
* The minimum value of zero disables animations.
|
|
690
653
|
* By increasing the value, animations become slower.
|
|
691
654
|
* '1' is the system default animation scale.
|
|
692
|
-
* @
|
|
693
|
-
* @throws {Error} If the adb setting command raises an exception.
|
|
655
|
+
* @throws If the adb setting command raises an exception.
|
|
694
656
|
*/
|
|
695
657
|
async function setAnimationScale(value) {
|
|
696
658
|
await bluebird_1.default.all(ANIMATION_SCALE_KEYS.map((k) => this.setSetting('global', k, value)));
|
|
@@ -698,23 +660,21 @@ async function setAnimationScale(value) {
|
|
|
698
660
|
/**
|
|
699
661
|
* Retrieve current screen orientation of the device under test.
|
|
700
662
|
*
|
|
701
|
-
* @
|
|
702
|
-
* @return {Promise<number?>} The current orientation encoded as an integer number.
|
|
663
|
+
* @returns The current orientation encoded as an integer number.
|
|
703
664
|
*/
|
|
704
665
|
async function getScreenOrientation() {
|
|
705
|
-
|
|
666
|
+
const stdout = await this.shell(['dumpsys', 'input']);
|
|
706
667
|
return getSurfaceOrientation(stdout);
|
|
707
668
|
}
|
|
708
669
|
// #region Private functions
|
|
709
670
|
/**
|
|
710
671
|
* Reads SurfaceOrientation in dumpsys output
|
|
711
672
|
*
|
|
712
|
-
* @param
|
|
713
|
-
* @returns {number | null}
|
|
673
|
+
* @param dumpsys
|
|
714
674
|
*/
|
|
715
675
|
function getSurfaceOrientation(dumpsys) {
|
|
716
676
|
const m = /SurfaceOrientation: \d/gi.exec(dumpsys);
|
|
717
|
-
return m
|
|
677
|
+
return m ? parseInt(m[0].split(':')[1], 10) : null;
|
|
718
678
|
}
|
|
719
679
|
// #endregion
|
|
720
680
|
//# sourceMappingURL=device-settings.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"device-settings.js","sourceRoot":"","sources":["../../../lib/tools/device-settings.js"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"device-settings.js","sourceRoot":"","sources":["../../../lib/tools/device-settings.ts"],"names":[],"mappings":"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"}
|