@yume-chan/android-bin 1.1.0 → 2.0.0

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.
Files changed (50) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/LICENSE +1 -1
  3. package/esm/am.d.ts +4 -2
  4. package/esm/am.d.ts.map +1 -1
  5. package/esm/am.js +9 -17
  6. package/esm/am.js.map +1 -1
  7. package/esm/bu.d.ts +2 -2
  8. package/esm/bu.d.ts.map +1 -1
  9. package/esm/bu.js +6 -14
  10. package/esm/bu.js.map +1 -1
  11. package/esm/bug-report.d.ts +2 -2
  12. package/esm/bug-report.d.ts.map +1 -1
  13. package/esm/bug-report.js +15 -13
  14. package/esm/bug-report.js.map +1 -1
  15. package/esm/cmd.d.ts +18 -20
  16. package/esm/cmd.d.ts.map +1 -1
  17. package/esm/cmd.js +84 -63
  18. package/esm/cmd.js.map +1 -1
  19. package/esm/demo-mode.d.ts +2 -2
  20. package/esm/demo-mode.js +3 -3
  21. package/esm/demo-mode.js.map +1 -1
  22. package/esm/dumpsys.d.ts +2 -2
  23. package/esm/dumpsys.js +6 -6
  24. package/esm/dumpsys.js.map +1 -1
  25. package/esm/logcat.d.ts +7 -8
  26. package/esm/logcat.d.ts.map +1 -1
  27. package/esm/logcat.js +18 -10
  28. package/esm/logcat.js.map +1 -1
  29. package/esm/overlay-display.d.ts +2 -2
  30. package/esm/overlay-display.js +2 -2
  31. package/esm/pm.d.ts +7 -3
  32. package/esm/pm.d.ts.map +1 -1
  33. package/esm/pm.js +81 -88
  34. package/esm/pm.js.map +1 -1
  35. package/esm/settings.d.ts +10 -7
  36. package/esm/settings.d.ts.map +1 -1
  37. package/esm/settings.js +14 -23
  38. package/esm/settings.js.map +1 -1
  39. package/package.json +9 -9
  40. package/src/am.ts +14 -21
  41. package/src/bu.ts +6 -14
  42. package/src/bug-report.ts +16 -16
  43. package/src/cmd.ts +136 -85
  44. package/src/demo-mode.ts +3 -3
  45. package/src/dumpsys.ts +6 -6
  46. package/src/logcat.ts +26 -15
  47. package/src/overlay-display.ts +2 -2
  48. package/src/pm.ts +92 -96
  49. package/src/settings.ts +20 -28
  50. package/tsconfig.build.tsbuildinfo +1 -1
package/esm/pm.js CHANGED
@@ -2,9 +2,9 @@
2
2
  // cspell:ignore instantapp
3
3
  // cspell:ignore apks
4
4
  // cspell:ignore versioncode
5
- import { AdbCommandBase, escapeArg } from "@yume-chan/adb";
5
+ import { AdbServiceBase } from "@yume-chan/adb";
6
6
  import { ConcatStringStream, SplitStringStream, TextDecoderStream, } from "@yume-chan/stream-extra";
7
- import { Cmd } from "./cmd.js";
7
+ import { CmdNoneProtocolService } from "./cmd.js";
8
8
  import { buildArguments } from "./utils.js";
9
9
  export var PackageManagerInstallLocation;
10
10
  (function (PackageManagerInstallLocation) {
@@ -74,7 +74,7 @@ const PACKAGE_MANAGER_RESOLVE_ACTIVITY_OPTIONS_MAP = {
74
74
  user: "--user",
75
75
  };
76
76
  function buildInstallArguments(command, options) {
77
- const args = buildArguments(["pm", command], options, PACKAGE_MANAGER_INSTALL_OPTIONS_MAP);
77
+ const args = buildArguments([PackageManager.ServiceName, command], options, PACKAGE_MANAGER_INSTALL_OPTIONS_MAP);
78
78
  if (!options?.skipExisting) {
79
79
  /*
80
80
  * | behavior | previous version | modern version |
@@ -91,11 +91,13 @@ function buildInstallArguments(command, options) {
91
91
  }
92
92
  return args;
93
93
  }
94
- export class PackageManager extends AdbCommandBase {
94
+ export class PackageManager extends AdbServiceBase {
95
+ static ServiceName = "package";
96
+ static CommandName = "pm";
95
97
  #cmd;
96
98
  constructor(adb) {
97
99
  super(adb);
98
- this.#cmd = new Cmd(adb);
100
+ this.#cmd = new CmdNoneProtocolService(adb, PackageManager.CommandName);
99
101
  }
100
102
  /**
101
103
  * Install the apk file.
@@ -104,14 +106,30 @@ export class PackageManager extends AdbCommandBase {
104
106
  */
105
107
  async install(apks, options) {
106
108
  const args = buildInstallArguments("install", options);
109
+ args[0] = PackageManager.CommandName;
107
110
  // WIP: old version of pm doesn't support multiple apks
108
111
  args.push(...apks);
109
- return await this.adb.subprocess.spawnAndWaitLegacy(args);
112
+ // Starting from Android 7, `pm` becomes a wrapper to `cmd package`.
113
+ // The benefit of `cmd package` is it starts faster than the old `pm`,
114
+ // because it connects to the already running `system` process,
115
+ // instead of initializing all system components from scratch.
116
+ //
117
+ // But launching `cmd package` directly causes it to not be able to
118
+ // read files in `/data/local/tmp` (and many other places) due to SELinux policies,
119
+ // so installing files must still use `pm`.
120
+ // (the starting executable file decides which SELinux policies to apply)
121
+ const output = await this.adb.subprocess.noneProtocol
122
+ .spawnWaitText(args)
123
+ .then((output) => output.trim());
124
+ if (output !== "Success") {
125
+ throw new Error(output);
126
+ }
127
+ return output;
110
128
  }
111
129
  async pushAndInstallStream(stream, options) {
112
- const sync = await this.adb.sync();
113
130
  const fileName = Math.random().toString().substring(2);
114
131
  const filePath = `/data/local/tmp/${fileName}.apk`;
132
+ const sync = await this.adb.sync();
115
133
  try {
116
134
  await sync.write({
117
135
  filename: filePath,
@@ -121,24 +139,8 @@ export class PackageManager extends AdbCommandBase {
121
139
  finally {
122
140
  await sync.dispose();
123
141
  }
124
- // Starting from Android 7, `pm` becomes a wrapper to `cmd package`.
125
- // The benefit of `cmd package` is it starts faster than the old `pm`,
126
- // because it connects to the already running `system` process,
127
- // instead of initializing all system components from scratch.
128
- //
129
- // But launching `cmd package` directly causes it to not be able to
130
- // read files in `/data/local/tmp` (and many other places) due to SELinux policies,
131
- // so installing files must still use `pm`.
132
- // (the starting executable file decides which SELinux policies to apply)
133
- const args = buildInstallArguments("install", options);
134
- args.push(filePath);
135
142
  try {
136
- const output = await this.adb.subprocess
137
- .spawnAndWaitLegacy(args.map(escapeArg))
138
- .then((output) => output.trim());
139
- if (output !== "Success") {
140
- throw new Error(output);
141
- }
143
+ return await this.install([filePath], options);
142
144
  }
143
145
  finally {
144
146
  await this.adb.rm(filePath);
@@ -149,18 +151,15 @@ export class PackageManager extends AdbCommandBase {
149
151
  // It's hard to detect whether `pm` supports streaming install (unless actually trying),
150
152
  // so check for whether `cmd` is supported,
151
153
  // and assume `pm` streaming install support status is same as that.
152
- if (!this.#cmd.supportsCmd) {
154
+ if (!this.#cmd.isSupported) {
153
155
  // Fall back to push file then install
154
156
  await this.pushAndInstallStream(stream, options);
155
157
  return;
156
158
  }
157
159
  const args = buildInstallArguments("install", options);
158
- // Remove `pm` from args, `Cmd#spawn` will prepend `cmd <command>` so the final args
159
- // will be `cmd package install <args>`
160
- args.shift();
161
160
  args.push("-S", size.toString());
162
- const process = await this.#cmd.spawn(false, "package", ...args);
163
- const output = process.stdout
161
+ const process = await this.#cmd.spawn(args);
162
+ const output = process.output
164
163
  .pipeThrough(new TextDecoderStream())
165
164
  .pipeThrough(new ConcatStringStream())
166
165
  .then((output) => output.trim());
@@ -215,24 +214,14 @@ export class PackageManager extends AdbCommandBase {
215
214
  uid,
216
215
  };
217
216
  }
218
- async #cmdOrSubprocess(args) {
219
- if (this.#cmd.supportsCmd) {
220
- args.shift();
221
- return await this.#cmd.spawn(false, "package", ...args);
222
- }
223
- return this.adb.subprocess.spawn(args);
224
- }
225
217
  async *listPackages(options) {
226
- const args = buildArguments(["pm", "list", "packages"], options, PACKAGE_MANAGER_LIST_PACKAGES_OPTIONS_MAP);
218
+ const args = buildArguments(["package", "list", "packages"], options, PACKAGE_MANAGER_LIST_PACKAGES_OPTIONS_MAP);
227
219
  if (options?.filter) {
228
220
  args.push(options.filter);
229
221
  }
230
- const process = await this.#cmdOrSubprocess(args);
231
- const reader = process.stdout
222
+ const process = await this.#cmd.spawn(args);
223
+ const reader = process.output
232
224
  .pipeThrough(new TextDecoderStream())
233
- // FIXME: `SplitStringStream` will throw away some data
234
- // if it doesn't end with a separator. So each chunk of data
235
- // must contain several complete lines.
236
225
  .pipeThrough(new SplitStringStream("\n"))
237
226
  .getReader();
238
227
  while (true) {
@@ -243,28 +232,37 @@ export class PackageManager extends AdbCommandBase {
243
232
  yield PackageManager.parsePackageListItem(value);
244
233
  }
245
234
  }
235
+ async getPackageSources(packageName) {
236
+ const args = [PackageManager.ServiceName, "-p", packageName];
237
+ const process = await this.#cmd.spawn(args);
238
+ const result = [];
239
+ for await (const line of process.output
240
+ .pipeThrough(new TextDecoderStream())
241
+ .pipeThrough(new SplitStringStream("\n"))) {
242
+ if (line.startsWith("package:")) {
243
+ result.push(line.substring("package:".length));
244
+ }
245
+ }
246
+ return result;
247
+ }
246
248
  async uninstall(packageName, options) {
247
- const args = buildArguments(["pm", "uninstall"], options, PACKAGE_MANAGER_UNINSTALL_OPTIONS_MAP);
249
+ const args = buildArguments([PackageManager.ServiceName, "uninstall"], options, PACKAGE_MANAGER_UNINSTALL_OPTIONS_MAP);
248
250
  args.push(packageName);
249
251
  if (options?.splitNames) {
250
252
  args.push(...options.splitNames);
251
253
  }
252
- const process = await this.#cmdOrSubprocess(args);
253
- const output = await process.stdout
254
- .pipeThrough(new TextDecoderStream())
255
- .pipeThrough(new ConcatStringStream())
254
+ const output = await this.#cmd
255
+ .spawnWaitText(args)
256
256
  .then((output) => output.trim());
257
257
  if (output !== "Success") {
258
258
  throw new Error(output);
259
259
  }
260
260
  }
261
261
  async resolveActivity(options) {
262
- let args = buildArguments(["pm", "resolve-activity", "--components"], options, PACKAGE_MANAGER_RESOLVE_ACTIVITY_OPTIONS_MAP);
262
+ let args = buildArguments([PackageManager.ServiceName, "resolve-activity", "--components"], options, PACKAGE_MANAGER_RESOLVE_ACTIVITY_OPTIONS_MAP);
263
263
  args = args.concat(options.intent.build());
264
- const process = await this.#cmdOrSubprocess(args);
265
- const output = await process.stdout
266
- .pipeThrough(new TextDecoderStream())
267
- .pipeThrough(new ConcatStringStream())
264
+ const output = await this.#cmd
265
+ .spawnWaitText(args)
268
266
  .then((output) => output.trim());
269
267
  if (output === "No activity found") {
270
268
  return undefined;
@@ -283,10 +281,8 @@ export class PackageManager extends AdbCommandBase {
283
281
  */
284
282
  async sessionCreate(options) {
285
283
  const args = buildInstallArguments("install-create", options);
286
- const process = await this.#cmdOrSubprocess(args);
287
- const output = await process.stdout
288
- .pipeThrough(new TextDecoderStream())
289
- .pipeThrough(new ConcatStringStream())
284
+ const output = await this.#cmd
285
+ .spawnWaitText(args)
290
286
  .then((output) => output.trim());
291
287
  const sessionIdString = output.match(/.*\[(\d+)\].*/);
292
288
  if (!sessionIdString) {
@@ -294,6 +290,15 @@ export class PackageManager extends AdbCommandBase {
294
290
  }
295
291
  return Number.parseInt(sessionIdString[1], 10);
296
292
  }
293
+ async checkResult(stream) {
294
+ const output = await stream
295
+ .pipeThrough(new TextDecoderStream())
296
+ .pipeThrough(new ConcatStringStream())
297
+ .then((output) => output.trim());
298
+ if (!output.startsWith("Success")) {
299
+ throw new Error(output);
300
+ }
301
+ }
297
302
  async sessionAddSplit(sessionId, splitName, path) {
298
303
  const args = [
299
304
  "pm",
@@ -302,16 +307,12 @@ export class PackageManager extends AdbCommandBase {
302
307
  splitName,
303
308
  path,
304
309
  ];
305
- const output = await this.adb.subprocess
306
- .spawnAndWaitLegacy(args)
307
- .then((output) => output.trim());
308
- if (!output.startsWith("Success")) {
309
- throw new Error(output);
310
- }
310
+ const process = await this.adb.subprocess.noneProtocol.spawn(args);
311
+ await this.checkResult(process.output);
311
312
  }
312
313
  async sessionAddSplitStream(sessionId, splitName, size, stream) {
313
314
  const args = [
314
- "pm",
315
+ PackageManager.ServiceName,
315
316
  "install-write",
316
317
  "-S",
317
318
  size.toString(),
@@ -319,37 +320,29 @@ export class PackageManager extends AdbCommandBase {
319
320
  splitName,
320
321
  "-",
321
322
  ];
322
- const process = await this.#cmdOrSubprocess(args);
323
- const output = process.stdout
324
- .pipeThrough(new TextDecoderStream())
325
- .pipeThrough(new ConcatStringStream())
326
- .then((output) => output.trim());
323
+ const process = await this.#cmd.spawn(args);
327
324
  await Promise.all([
328
325
  stream.pipeTo(process.stdin),
329
- output.then((output) => {
330
- if (!output.startsWith("Success")) {
331
- throw new Error(output);
332
- }
333
- }),
326
+ this.checkResult(process.output),
334
327
  ]);
335
328
  }
336
329
  async sessionCommit(sessionId) {
337
- const args = ["pm", "install-commit", sessionId.toString()];
338
- const output = await this.adb.subprocess
339
- .spawnAndWaitLegacy(args)
340
- .then((output) => output.trim());
341
- if (output !== "Success") {
342
- throw new Error(output);
343
- }
330
+ const args = [
331
+ PackageManager.ServiceName,
332
+ "install-commit",
333
+ sessionId.toString(),
334
+ ];
335
+ const process = await this.#cmd.spawn(args);
336
+ await this.checkResult(process.output);
344
337
  }
345
338
  async sessionAbandon(sessionId) {
346
- const args = ["pm", "install-abandon", sessionId.toString()];
347
- const output = await this.adb.subprocess
348
- .spawnAndWaitLegacy(args)
349
- .then((output) => output.trim());
350
- if (output !== "Success") {
351
- throw new Error(output);
352
- }
339
+ const args = [
340
+ PackageManager.ServiceName,
341
+ "install-abandon",
342
+ sessionId.toString(),
343
+ ];
344
+ const process = await this.#cmd.spawn(args);
345
+ await this.checkResult(process.output);
353
346
  }
354
347
  }
355
348
  export class PackageManagerInstallSession {
package/esm/pm.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"pm.js","sourceRoot":"","sources":["../src/pm.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pm.js","sourceRoot":"","sources":["../src/pm.ts"],"names":[],"mappings":"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"}
package/esm/settings.d.ts CHANGED
@@ -1,12 +1,13 @@
1
1
  import type { Adb } from "@yume-chan/adb";
2
- import { AdbCommandBase } from "@yume-chan/adb";
2
+ import { AdbServiceBase } from "@yume-chan/adb";
3
3
  import type { SingleUser } from "./utils.js";
4
4
  export type SettingsNamespace = "system" | "secure" | "global";
5
- export declare enum SettingsResetMode {
6
- UntrustedDefaults = "untrusted_defaults",
7
- UntrustedClear = "untrusted_clear",
8
- TrustedDefaults = "trusted_defaults"
9
- }
5
+ export declare const SettingsResetMode: {
6
+ readonly UntrustedDefaults: "untrusted_defaults";
7
+ readonly UntrustedClear: "untrusted_clear";
8
+ readonly TrustedDefaults: "trusted_defaults";
9
+ };
10
+ export type SettingsResetMode = (typeof SettingsResetMode)[keyof typeof SettingsResetMode];
10
11
  export interface SettingsOptions {
11
12
  user?: SingleUser;
12
13
  }
@@ -14,8 +15,10 @@ export interface SettingsPutOptions extends SettingsOptions {
14
15
  tag?: string;
15
16
  makeDefault?: boolean;
16
17
  }
17
- export declare class Settings extends AdbCommandBase {
18
+ export declare class Settings extends AdbServiceBase {
18
19
  #private;
20
+ static ServiceName: string;
21
+ static CommandName: string;
19
22
  constructor(adb: Adb);
20
23
  base(verb: string, namespace: SettingsNamespace, options: SettingsOptions | undefined, ...args: string[]): Promise<string>;
21
24
  get(namespace: SettingsNamespace, key: string, options?: SettingsOptions): Promise<string>;
@@ -1 +1 @@
1
- {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../src/settings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAA2B,MAAM,gBAAgB,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAGhD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE/D,oBAAY,iBAAiB;IACzB,iBAAiB,uBAAuB;IACxC,cAAc,oBAAoB;IAClC,eAAe,qBAAqB;CACvC;AAED,MAAM,WAAW,eAAe;IAC5B,IAAI,CAAC,EAAE,UAAU,CAAC;CACrB;AAED,MAAM,WAAW,kBAAmB,SAAQ,eAAe;IACvD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,OAAO,CAAC;CACzB;AAGD,qBAAa,QAAS,SAAQ,cAAc;;gBAG5B,GAAG,EAAE,GAAG;IAKd,IAAI,CACN,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,iBAAiB,EAC5B,OAAO,EAAE,eAAe,GAAG,SAAS,EACpC,GAAG,IAAI,EAAE,MAAM,EAAE,GAClB,OAAO,CAAC,MAAM,CAAC;IA2BZ,GAAG,CACL,SAAS,EAAE,iBAAiB,EAC5B,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE,eAAe,GAC1B,OAAO,CAAC,MAAM,CAAC;IAMZ,MAAM,CACR,SAAS,EAAE,iBAAiB,EAC5B,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE,eAAe,GAC1B,OAAO,CAAC,IAAI,CAAC;IAIV,GAAG,CACL,SAAS,EAAE,iBAAiB,EAC5B,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,kBAAkB,GAC7B,OAAO,CAAC,IAAI,CAAC;IAWhB,KAAK,CACD,SAAS,EAAE,iBAAiB,EAC5B,IAAI,EAAE,iBAAiB,EACvB,OAAO,CAAC,EAAE,eAAe,GAC1B,OAAO,CAAC,IAAI,CAAC;IAChB,KAAK,CACD,SAAS,EAAE,iBAAiB,EAC5B,WAAW,EAAE,MAAM,EACnB,GAAG,CAAC,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,eAAe,GAC1B,OAAO,CAAC,IAAI,CAAC;CAmBnB"}
1
+ {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../src/settings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAGhD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE/D,eAAO,MAAM,iBAAiB;;;;CAIpB,CAAC;AAEX,MAAM,MAAM,iBAAiB,GACzB,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,OAAO,iBAAiB,CAAC,CAAC;AAE/D,MAAM,WAAW,eAAe;IAC5B,IAAI,CAAC,EAAE,UAAU,CAAC;CACrB;AAED,MAAM,WAAW,kBAAmB,SAAQ,eAAe;IACvD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,OAAO,CAAC;CACzB;AAGD,qBAAa,QAAS,SAAQ,cAAc;;IACxC,MAAM,CAAC,WAAW,SAAc;IAChC,MAAM,CAAC,WAAW,SAAc;gBAIpB,GAAG,EAAE,GAAG;IAKpB,IAAI,CACA,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,iBAAiB,EAC5B,OAAO,EAAE,eAAe,GAAG,SAAS,EACpC,GAAG,IAAI,EAAE,MAAM,EAAE,GAClB,OAAO,CAAC,MAAM,CAAC;IAaZ,GAAG,CACL,SAAS,EAAE,iBAAiB,EAC5B,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE,eAAe,GAC1B,OAAO,CAAC,MAAM,CAAC;IAMZ,MAAM,CACR,SAAS,EAAE,iBAAiB,EAC5B,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE,eAAe,GAC1B,OAAO,CAAC,IAAI,CAAC;IAIV,GAAG,CACL,SAAS,EAAE,iBAAiB,EAC5B,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,kBAAkB,GAC7B,OAAO,CAAC,IAAI,CAAC;IAWhB,KAAK,CACD,SAAS,EAAE,iBAAiB,EAC5B,IAAI,EAAE,iBAAiB,EACvB,OAAO,CAAC,EAAE,eAAe,GAC1B,OAAO,CAAC,IAAI,CAAC;IAChB,KAAK,CACD,SAAS,EAAE,iBAAiB,EAC5B,WAAW,EAAE,MAAM,EACnB,GAAG,CAAC,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,eAAe,GAC1B,OAAO,CAAC,IAAI,CAAC;CAmBnB"}
package/esm/settings.js CHANGED
@@ -1,36 +1,27 @@
1
- import { AdbCommandBase } from "@yume-chan/adb";
2
- import { Cmd } from "./cmd.js";
3
- export var SettingsResetMode;
4
- (function (SettingsResetMode) {
5
- SettingsResetMode["UntrustedDefaults"] = "untrusted_defaults";
6
- SettingsResetMode["UntrustedClear"] = "untrusted_clear";
7
- SettingsResetMode["TrustedDefaults"] = "trusted_defaults";
8
- })(SettingsResetMode || (SettingsResetMode = {}));
1
+ import { AdbServiceBase } from "@yume-chan/adb";
2
+ import { CmdNoneProtocolService } from "./cmd.js";
3
+ export const SettingsResetMode = {
4
+ UntrustedDefaults: "untrusted_defaults",
5
+ UntrustedClear: "untrusted_clear",
6
+ TrustedDefaults: "trusted_defaults",
7
+ };
9
8
  // frameworks/base/packages/SettingsProvider/src/com/android/providers/settings/SettingsService.java
10
- export class Settings extends AdbCommandBase {
9
+ export class Settings extends AdbServiceBase {
10
+ static ServiceName = "settings";
11
+ static CommandName = "settings";
11
12
  #cmd;
12
13
  constructor(adb) {
13
14
  super(adb);
14
- this.#cmd = new Cmd(adb);
15
+ this.#cmd = new CmdNoneProtocolService(adb, Settings.CommandName);
15
16
  }
16
- async base(verb, namespace, options, ...args) {
17
- let command = ["settings"];
17
+ base(verb, namespace, options, ...args) {
18
+ let command = [Settings.ServiceName];
18
19
  if (options?.user !== undefined) {
19
20
  command.push("--user", options.user.toString());
20
21
  }
21
22
  command.push(verb, namespace);
22
23
  command = command.concat(args);
23
- let output;
24
- if (this.#cmd.supportsCmd) {
25
- output = await this.#cmd.spawnAndWait(command[0], ...command.slice(1));
26
- }
27
- else {
28
- output = await this.adb.subprocess.spawnAndWait(command);
29
- }
30
- if (output.stderr) {
31
- throw new Error(output.stderr);
32
- }
33
- return output.stdout;
24
+ return this.#cmd.spawnWaitText(command);
34
25
  }
35
26
  async get(namespace, key, options) {
36
27
  const output = await this.base("get", namespace, options, key);
@@ -1 +1 @@
1
- {"version":3,"file":"settings.js","sourceRoot":"","sources":["../src/settings.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAK/B,MAAM,CAAN,IAAY,iBAIX;AAJD,WAAY,iBAAiB;IACzB,6DAAwC,CAAA;IACxC,uDAAkC,CAAA;IAClC,yDAAoC,CAAA;AACxC,CAAC,EAJW,iBAAiB,KAAjB,iBAAiB,QAI5B;AAWD,oGAAoG;AACpG,MAAM,OAAO,QAAS,SAAQ,cAAc;IACxC,IAAI,CAAM;IAEV,YAAY,GAAQ;QAChB,KAAK,CAAC,GAAG,CAAC,CAAC;QACX,IAAI,CAAC,IAAI,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,IAAI,CACN,IAAY,EACZ,SAA4B,EAC5B,OAAoC,EACpC,GAAG,IAAc;QAEjB,IAAI,OAAO,GAAG,CAAC,UAAU,CAAC,CAAC;QAE3B,IAAI,OAAO,EAAE,IAAI,KAAK,SAAS,EAAE,CAAC;YAC9B,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QACpD,CAAC;QAED,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAC9B,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAE/B,IAAI,MAA+B,CAAC;QACpC,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACxB,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,YAAY,CACjC,OAAO,CAAC,CAAC,CAAE,EACX,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CACtB,CAAC;QACN,CAAC;aAAM,CAAC;YACJ,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAC7D,CAAC;QAED,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACnC,CAAC;QAED,OAAO,MAAM,CAAC,MAAM,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,GAAG,CACL,SAA4B,EAC5B,GAAW,EACX,OAAyB;QAEzB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;QAC/D,iBAAiB;QACjB,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAClD,CAAC;IAED,KAAK,CAAC,MAAM,CACR,SAA4B,EAC5B,GAAW,EACX,OAAyB;QAEzB,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,GAAG,CACL,SAA4B,EAC5B,GAAW,EACX,KAAa,EACb,OAA4B;QAE5B,MAAM,IAAI,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAC1B,IAAI,OAAO,EAAE,GAAG,EAAE,CAAC;YACf,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC;QACD,IAAI,OAAO,EAAE,WAAW,EAAE,CAAC;YACvB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACzB,CAAC;QACD,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IACxD,CAAC;IAaD,KAAK,CAAC,KAAK,CACP,SAA4B,EAC5B,iBAAyB,EACzB,YAAuC,EACvC,OAAyB;QAEzB,MAAM,IAAI,GAAG,CAAC,iBAAiB,CAAC,CAAC;QACjC,IACI,iBAAiB,KAAK,iBAAiB,CAAC,iBAAiB;YACzD,iBAAiB,KAAK,iBAAiB,CAAC,cAAc;YACtD,iBAAiB,KAAK,iBAAiB,CAAC,eAAe,EACzD,CAAC;YACC,OAAO,GAAG,YAA+B,CAAC;QAC9C,CAAC;aAAM,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE,CAAC;YAC1C,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC5B,CAAC;QACD,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IAC1D,CAAC;CACJ"}
1
+ {"version":3,"file":"settings.js","sourceRoot":"","sources":["../src/settings.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yume-chan/android-bin",
3
- "version": "1.1.0",
3
+ "version": "2.0.0",
4
4
  "description": "Wrappers for Android built-in executables.",
5
5
  "keywords": [
6
6
  "adb",
@@ -26,17 +26,17 @@
26
26
  "types": "esm/index.d.ts",
27
27
  "sideEffects": false,
28
28
  "dependencies": {
29
- "@yume-chan/stream-extra": "^1.0.0",
30
- "@yume-chan/adb": "^1.1.0",
31
- "@yume-chan/struct": "^1.0.0"
29
+ "@yume-chan/adb": "^2.0.0",
30
+ "@yume-chan/stream-extra": "^2.0.0",
31
+ "@yume-chan/struct": "^2.0.0"
32
32
  },
33
33
  "devDependencies": {
34
- "@types/node": "^22.10.2",
35
- "prettier": "^3.4.2",
36
- "typescript": "^5.7.2",
37
- "@yume-chan/eslint-config": "^1.0.0",
34
+ "@types/node": "^22.13.10",
35
+ "prettier": "^3.5.3",
36
+ "typescript": "^5.8.2",
37
+ "@yume-chan/test-runner": "^1.0.0",
38
38
  "@yume-chan/tsconfig": "^1.0.0",
39
- "@yume-chan/test-runner": "^1.0.0"
39
+ "@yume-chan/eslint-config": "^1.0.0"
40
40
  },
41
41
  "scripts": {
42
42
  "build": "tsc -b tsconfig.build.json",
package/src/am.ts CHANGED
@@ -1,8 +1,7 @@
1
1
  import type { Adb } from "@yume-chan/adb";
2
- import { AdbCommandBase } from "@yume-chan/adb";
3
- import { ConcatStringStream, TextDecoderStream } from "@yume-chan/stream-extra";
2
+ import { AdbServiceBase } from "@yume-chan/adb";
4
3
 
5
- import { Cmd } from "./cmd.js";
4
+ import { CmdNoneProtocolService } from "./cmd.js";
6
5
  import type { IntentBuilder } from "./intent.js";
7
6
  import type { SingleUser } from "./utils.js";
8
7
  import { buildArguments } from "./utils.js";
@@ -24,39 +23,33 @@ const START_ACTIVITY_OPTIONS_MAP: Partial<
24
23
  user: "--user",
25
24
  };
26
25
 
27
- export class ActivityManager extends AdbCommandBase {
28
- #cmd: Cmd;
26
+ export class ActivityManager extends AdbServiceBase {
27
+ static ServiceName = "activity";
28
+ static CommandName = "am";
29
+
30
+ #cmd: CmdNoneProtocolService;
29
31
 
30
32
  constructor(adb: Adb) {
31
33
  super(adb);
32
- this.#cmd = new Cmd(adb);
33
- }
34
-
35
- async #cmdOrSubprocess(args: string[]) {
36
- if (this.#cmd.supportsCmd) {
37
- args.shift();
38
- return await this.#cmd.spawn(false, "activity", ...args);
39
- }
40
-
41
- return this.adb.subprocess.spawn(args);
34
+ this.#cmd = new CmdNoneProtocolService(
35
+ adb,
36
+ ActivityManager.CommandName,
37
+ );
42
38
  }
43
39
 
44
40
  async startActivity(
45
41
  options: ActivityManagerStartActivityOptions,
46
42
  ): Promise<void> {
47
43
  let args = buildArguments(
48
- ["am", "start-activity", "-W"],
44
+ [ActivityManager.ServiceName, "start-activity", "-W"],
49
45
  options,
50
46
  START_ACTIVITY_OPTIONS_MAP,
51
47
  );
52
48
 
53
49
  args = args.concat(options.intent.build());
54
50
 
55
- const process = await this.#cmdOrSubprocess(args);
56
-
57
- const output = await process.stdout
58
- .pipeThrough(new TextDecoderStream())
59
- .pipeThrough(new ConcatStringStream())
51
+ const output = await this.#cmd
52
+ .spawnWaitText(args)
60
53
  .then((output) => output.trim());
61
54
 
62
55
  for (const line of output) {
package/src/bu.ts CHANGED
@@ -1,6 +1,5 @@
1
- import { AdbCommandBase } from "@yume-chan/adb";
1
+ import { AdbServiceBase } from "@yume-chan/adb";
2
2
  import type { MaybeConsumable, ReadableStream } from "@yume-chan/stream-extra";
3
- import { ConcatStringStream, TextDecoderStream } from "@yume-chan/stream-extra";
4
3
 
5
4
  export interface AdbBackupOptions {
6
5
  user: number;
@@ -18,7 +17,7 @@ export interface AdbRestoreOptions {
18
17
  file: ReadableStream<MaybeConsumable<Uint8Array>>;
19
18
  }
20
19
 
21
- export class AdbBackup extends AdbCommandBase {
20
+ export class AdbBackup extends AdbServiceBase {
22
21
  /**
23
22
  * User must confirm backup on device within 60 seconds.
24
23
  */
@@ -55,26 +54,19 @@ export class AdbBackup extends AdbCommandBase {
55
54
  args.push(...options.packages);
56
55
  }
57
56
 
58
- const process = await this.adb.subprocess.spawn(args);
59
- return process.stdout;
57
+ const process = await this.adb.subprocess.noneProtocol.spawn(args);
58
+ return process.output;
60
59
  }
61
60
 
62
61
  /**
63
62
  * User must enter the password (if any) and
64
63
  * confirm restore on device within 60 seconds.
65
64
  */
66
- async restore(options: AdbRestoreOptions): Promise<string> {
65
+ restore(options: AdbRestoreOptions): Promise<string> {
67
66
  const args = ["bu", "restore"];
68
67
  if (options.user !== undefined) {
69
68
  args.push("--user", options.user.toString());
70
69
  }
71
- const process = await this.adb.subprocess.spawn(args);
72
- const [output] = await Promise.all([
73
- process.stdout
74
- .pipeThrough(new TextDecoderStream())
75
- .pipeThrough(new ConcatStringStream()),
76
- options.file.pipeTo(process.stdin),
77
- ]);
78
- return output;
70
+ return this.adb.subprocess.noneProtocol.spawnWaitText(args);
79
71
  }
80
72
  }