io.appium.settings 8.4.2 → 8.4.5
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 +22 -0
- package/README.md +8 -7
- package/apks/settings_apk-debug.apk +0 -0
- package/package.json +4 -4
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,28 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [8.4.5](https://github.com/appium/appium-android/compare/io.appium.settings@8.4.4...io.appium.settings@8.4.5) (2026-10-28)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package io.appium.settings
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
## [8.4.4](https://github.com/appium/appium-android/compare/io.appium.settings@8.4.3...io.appium.settings@8.4.4) (2026-10-23)
|
|
15
|
+
|
|
16
|
+
### Bug Fixes
|
|
17
|
+
|
|
18
|
+
* **adb:** use AsyncLock from asyncbox instead of async-lock ([#45](https://github.com/appium/appium-android/issues/45)) ([fe41904](https://github.com/appium/appium-android/commit/fe4190403e1bc3f66a2ead346caf7eb16002626b))
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
## [8.4.3](https://github.com/appium/appium-android/compare/io.appium.settings@8.4.2...io.appium.settings@8.4.3) (2026-10-23)
|
|
22
|
+
|
|
23
|
+
### Miscellaneous Chores
|
|
24
|
+
|
|
25
|
+
* **deps:** bump gradle-wrapper in /packages/settings ([#43](https://github.com/appium/appium-android/issues/43)) ([0e5c018](https://github.com/appium/appium-android/commit/0e5c0183b6d5c3a667d9c782ace729f71e00a2a2))
|
|
26
|
+
|
|
27
|
+
|
|
6
28
|
## [8.4.2](https://github.com/appium/appium-android/compare/io.appium.settings@8.4.1...io.appium.settings@8.4.2) (2026-10-17)
|
|
7
29
|
|
|
8
30
|
### Miscellaneous Chores
|
package/README.md
CHANGED
|
@@ -40,7 +40,7 @@ You may also consider using the latest [Android Studio](https://developer.androi
|
|
|
40
40
|
### Enable access to non-SDK interfaces
|
|
41
41
|
|
|
42
42
|
[Restrictions on non-SDK interfaces](https://developer.android.com/guide/app-compatibility/restrictions-non-sdk-interfaces#test-for-non-sdk) could affect some functionalities.
|
|
43
|
-
Changing of the system locale in API Level 34 or later demonstrates the above restriction. Please [enable access to non-SDK interfaces](https://developer.android.com/guide/app-compatibility/restrictions-non-sdk-interfaces#how_can_i_enable_access_to_non-sdk_interfaces) via `adb`. [This issue comment](https://github.com/appium/io.appium.settings/issues/180#issuecomment-2156279885) is adb logcat output when the non-SDK interfaces are enabled, or disabled (system default).
|
|
43
|
+
Changing of the system locale in API Level 34 or later demonstrates the above restriction. Please [enable access to non-SDK interfaces](https://developer.android.com/guide/app-compatibility/restrictions-non-sdk-interfaces#how_can_i_enable_access_to_non-sdk_interfaces) via `adb`. [This issue comment](https://github.com/appium/io.appium.settings/issues/180#issuecomment-2156279885) is adb logcat output when the non-SDK interfaces are enabled, or disabled (system default). If `io.appium.settings` was already running before the hidden API policy was updated, restart the app process (`adb shell am force-stop io.appium.settings && adb shell am start -n io.appium.settings/.Settings -a android.intent.action.MAIN -c android.intent.category.LAUNCHER`) or reboot the device so the updated policy takes effect.
|
|
44
44
|
|
|
45
45
|
## Building
|
|
46
46
|
|
|
@@ -72,7 +72,7 @@ $ adb uninstall io.appium.settings
|
|
|
72
72
|
|
|
73
73
|
## Using the JavaScript wrapper
|
|
74
74
|
|
|
75
|
-
This module exports the [SettingsApp](./lib/client.
|
|
75
|
+
This module exports the [SettingsApp](./lib/client.ts) class, which allows you to automate the below interactions with JavaScript.
|
|
76
76
|
The wrapper expects you to also have the [appium-adb](https://github.com/appium/appium-adb) module listed
|
|
77
77
|
in your dependencies. The actual version of the appium-adb module must satisfy the same semver requirement this module
|
|
78
78
|
has in its [devDependencies](./package.json).
|
|
@@ -104,7 +104,7 @@ main();
|
|
|
104
104
|
```
|
|
105
105
|
|
|
106
106
|
The module also exports various constants containing its service and action names, that could be useful in your
|
|
107
|
-
scripts. Check [constants.
|
|
107
|
+
scripts. Check [constants.ts](./lib/constants.ts) for more details.
|
|
108
108
|
|
|
109
109
|
## Changing of system settings
|
|
110
110
|
|
|
@@ -291,8 +291,9 @@ $ adb shell am broadcast -a io.appium.settings.notifications
|
|
|
291
291
|
The notifications listener service is running in the background and collects
|
|
292
292
|
all the active and newly created notifications into the internal buffer with maximum
|
|
293
293
|
size of `100`. The collected data (e.g. the properties and texts of each notification)
|
|
294
|
-
is returned as JSON-formatted string
|
|
295
|
-
|
|
294
|
+
is returned as JSON-formatted string (with `result=-1`, which corresponds to Android's
|
|
295
|
+
`Activity.RESULT_OK` on ordered broadcasts). An error description string is returned with
|
|
296
|
+
`result=0` (`Activity.RESULT_CANCELED`) if the notifications list cannot be retrieved.
|
|
296
297
|
The example of the resulting data:
|
|
297
298
|
```json
|
|
298
299
|
{
|
|
@@ -434,7 +435,7 @@ either a sequence of JPEG frames or an H.264/HEVC video (with an optional interl
|
|
|
434
435
|
audio track), instead of writing a file. This is a **raw local-socket protocol**, not an
|
|
435
436
|
HTTP/MJPEG server: the app opens a local abstract socket on-device, and the consumer is
|
|
436
437
|
expected to `adb forward` it to a host TCP port and parse the (simple, length-prefixed)
|
|
437
|
-
frame protocol itself. The [SettingsApp](./lib/client.
|
|
438
|
+
frame protocol itself. The [SettingsApp](./lib/client.ts) wrapper (`makeJpegStreamSession()` /
|
|
438
439
|
`makeVideoStreamSession()`) already does this for you and is the recommended way to consume
|
|
439
440
|
either stream; talking to the socket directly is only needed for other languages/tools.
|
|
440
441
|
|
|
@@ -562,7 +563,7 @@ Voila!
|
|
|
562
563
|
|
|
563
564
|
## Caveats
|
|
564
565
|
|
|
565
|
-
There are certain system services which cannot be accessed through an application. Two ones central here are `airplane_mode` and `gps`.
|
|
566
|
+
There are certain system services which cannot be accessed through an application. Two ones central here are `airplane_mode` and `gps`. Wi-Fi hotspot (tethering) is also not managed by Appium Settings; on supported Android versions it can be invoked via `adb shell cmd wifi start-softap`.
|
|
566
567
|
|
|
567
568
|
|
|
568
569
|
## License
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "io.appium.settings",
|
|
3
|
-
"version": "8.4.
|
|
3
|
+
"version": "8.4.5",
|
|
4
4
|
"description": "App for dealing with Android settings",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"android",
|
|
@@ -51,7 +51,7 @@
|
|
|
51
51
|
},
|
|
52
52
|
"dependencies": {
|
|
53
53
|
"@appium/logger": "^2.0.0-rc.1",
|
|
54
|
-
"asyncbox": "^6.0
|
|
54
|
+
"asyncbox": "^6.5.0",
|
|
55
55
|
"semver": "^7.5.4",
|
|
56
56
|
"teen_process": "^4.0.4"
|
|
57
57
|
},
|
|
@@ -60,12 +60,12 @@
|
|
|
60
60
|
"@appium/types": "^1.0.0-rc.1",
|
|
61
61
|
"@types/node": "^26.6.5",
|
|
62
62
|
"@types/sinon": "^22.0.0",
|
|
63
|
-
"appium-adb": "^16.1.
|
|
63
|
+
"appium-adb": "^16.1.2",
|
|
64
64
|
"sinon": "^22.0.0"
|
|
65
65
|
},
|
|
66
66
|
"engines": {
|
|
67
67
|
"node": "^20.19.0 || ^22.12.0 || >=24.0.0",
|
|
68
68
|
"npm": ">=10"
|
|
69
69
|
},
|
|
70
|
-
"gitHead": "
|
|
70
|
+
"gitHead": "dd7fac6576be570d54de8ff2874b88426b4446dd"
|
|
71
71
|
}
|