1/* 2 * Copyright (c) 2022 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 16import { paramMock } from "../utils" 17 18export function mockMultimediaAudio() { 19 const interruptAction = { 20 actionType: audio.InterruptActionType, 21 type: audio.InterruptType, 22 hint: audio.InterruptHint, 23 activated: "[PC Preview] unknow activated", 24 } 25 const AudioDeviceDescriptor = { 26 deviceRole: audio.DeviceRole, 27 deviceType: audio.DeviceType, 28 id: "[PC Preview] unknow id", 29 name: "[PC Preview] unknow name", 30 address: "[PC Preview] unknow address", 31 sampleRates: [paramMock.paramNumberMock], 32 channelCounts: [paramMock.paramNumberMock], 33 channelMasks: [paramMock.paramNumberMock], 34 networkId: "[PC Preview] unknow networkId", 35 interruptGroupId: "[PC Preview] unknow interruptGroupId", 36 volumeGroupId: "[PC Preview] unknow volumeGroupId", 37 } 38 const DeviceChangeAction = { 39 type: audio.DeviceChangeType, 40 deviceDescriptors: AudioDeviceDescriptor, 41 } 42 const AudioRingMode = audio.AudioRingMode 43 const VolumeEvent = { 44 volumeType: audio.AudioVolumeType, 45 volume: "[PC Preview] unknow volume", 46 updateUi: "[PC Preview] unknow updateUi", 47 volumeGroupId: "[PC Preview] unknow volumeGroupId", 48 networkId: "[PC Preview] unknow networkId", 49 } 50 const AudioScene = '[PC Preview] unknow AudioScene' 51 const AudioStreamInfo = { 52 samplingRate: audio.AudioSamplingRate, 53 channels: audio.AudioChannel, 54 sampleFormat: audio.AudioSampleFormat, 55 encodingType: audio.AudioEncodingType, 56 } 57 const AudioRendererInfo = { 58 content: audio.ContentType, 59 usage: audio.StreamUsage, 60 rendererFlags: "[PC Preview] unknow rendererFlags", 61 } 62 const AudioRendererOptions = { 63 streamInfo: AudioStreamInfo, 64 rendererInfo: AudioRendererInfo, 65 } 66 const AudioCapturerInfo = { 67 source: audio.SourceType, 68 capturerFlags: "[PC Preview] unknow capturerFlags", 69 } 70 const AudioCapturerOptions = { 71 streamInfo: AudioStreamInfo, 72 capturerInfo: AudioCapturerInfo, 73 } 74 const AudioRendererRate = audio.AudioRendererRate 75 const InterruptEvent = { 76 eventType: audio.InterruptType, 77 forceType: audio.InterruptForceType, 78 hintType: audio.InterruptHint, 79 } 80 const AudioInterrupt = { 81 streamUsage: audio.StreamUsage, 82 contentType: audio.ContentType, 83 pauseWhenDucked: "[PC Preview] unknow pauseWhenDucked", 84 } 85 const AudioRendererChangeInfo = { 86 streamId: "[PC Preview] unknow streamId", 87 clientUid: "[PC Preview] unknow clientUid", 88 rendererInfo: AudioRendererInfo, 89 rendererState: audio.AudioState, 90 deviceDescriptors: [AudioDeviceDescriptor], 91 } 92 const AudioCapturerChangeInfo = { 93 streamId: "[PC Preview] unknow streamId", 94 clientUid: "[PC Preview] unknow clientUid", 95 capturerInfo: AudioRendererInfo, 96 capturerState: audio.AudioState, 97 deviceDescriptors: [AudioDeviceDescriptor], 98 } 99 const AudioRendererFilter = { 100 uid: "[PC Preview] unknow uid", 101 rendererInfo: AudioRendererInfo, 102 rendererId: "[PC Preview] unknow rendererId", 103 } 104 const VolumeGroupInfo = { 105 networkId: "[PC Preview] unknow networkId", 106 groupId: "[PC Preview] unknow groupId", 107 mappingId: "[PC Preview] unknow mappingId", 108 groupName: "[PC Preview] unknow groupName", 109 type: audio.ConnectType, 110 } 111 const AudioCapturer = { 112 state: "[PC Preview] unknow state", 113 getCapturerInfo: function (...args) { 114 console.warn("AudioCapturer.getCapturerInfo interface mocked in the Previewer." + 115 " How this interface works on the Previewer may be different from that on a real device.") 116 const len = args.length 117 if (typeof args[len - 1] === 'function') { 118 args[len - 1].call(this, paramMock.businessErrorMock, AudioCapturerInfo); 119 } else { 120 return new Promise((resolve, reject) => { 121 resolve(AudioCapturerInfo); 122 }) 123 } 124 }, 125 getStreamInfo: function (...args) { 126 console.warn("AudioCapturer.getStreamInfo interface mocked in the Previewer." + 127 " How this interface works on the Previewer may be different from that on a real device.") 128 const len = args.length 129 if (typeof args[len - 1] === 'function') { 130 args[len - 1].call(this, paramMock.businessErrorMock, AudioStreamInfo); 131 } else { 132 return new Promise((resolve, reject) => { 133 resolve(AudioStreamInfo); 134 }) 135 } 136 }, 137 start: function (...args) { 138 console.warn("AudioCapturer.start interface mocked in the Previewer." + 139 " How this interface works on the Previewer may be different from that on a real device.") 140 const len = args.length 141 if (typeof args[len - 1] === 'function') { 142 args[len - 1].call(this, paramMock.businessErrorMock); 143 } else { 144 return new Promise((resolve, reject) => { 145 resolve(); 146 }) 147 } 148 }, 149 read: function (...args) { 150 console.warn("AudioCapturer.read interface mocked in the Previewer." + 151 " How this interface works on the Previewer may be different from that on a real device.") 152 const len = args.length 153 if (typeof args[len - 1] === 'function') { 154 args[len - 1].call(this, paramMock.businessErrorMock, paramMock.paramArrayMock); 155 } else { 156 return new Promise((resolve, reject) => { 157 resolve(paramMock.paramArrayMock); 158 }) 159 } 160 }, 161 getAudioTime: function (...args) { 162 console.warn("AudioCapturer.getAudioTime interface mocked in the Previewer." + 163 " How this interface works on the Previewer may be different from that on a real device.") 164 const len = args.length 165 if (typeof args[len - 1] === 'function') { 166 args[len - 1].call(this, paramMock.businessErrorMock, paramMock.paramNumberMock); 167 } else { 168 return new Promise((resolve, reject) => { 169 resolve(paramMock.paramNumberMock); 170 }) 171 } 172 }, 173 stop: function (...args) { 174 console.warn("AudioCapturer.stop interface mocked in the Previewer." + 175 " How this interface works on the Previewer may be different from that on a real device.") 176 const len = args.length 177 if (typeof args[len - 1] === 'function') { 178 args[len - 1].call(this, paramMock.businessErrorMock); 179 } else { 180 return new Promise((resolve, reject) => { 181 resolve(); 182 }) 183 } 184 }, 185 release: function (...args) { 186 console.warn("AudioCapturer.release interface mocked in the Previewer." + 187 " How this interface works on the Previewer may be different from that on a real device.") 188 const len = args.length 189 if (typeof args[len - 1] === 'function') { 190 args[len - 1].call(this, paramMock.businessErrorMock); 191 } else { 192 return new Promise((resolve, reject) => { 193 resolve(); 194 }) 195 } 196 }, 197 getBufferSize: function (...args) { 198 console.warn("AudioCapturer.getBufferSize interface mocked in the Previewer." + 199 " How this interface works on the Previewer may be different from that on a real device.") 200 const len = args.length 201 if (typeof args[len - 1] === 'function') { 202 args[len - 1].call(this, paramMock.businessErrorMock, paramMock.paramNumberMock); 203 } else { 204 return new Promise((resolve, reject) => { 205 resolve(paramMock.paramNumberMock); 206 }) 207 } 208 }, 209 on: function (...args) { 210 console.warn("AudioCapturer.on interface mocked in the Previewer." + 211 " How this interface works on the Previewer may be different from that on a real device.") 212 }, 213 off: function (...args) { 214 console.warn("AudioCapturer.off interface mocked in the Previewer." + 215 " How this interface works on the Previewer may be different from that on a real device.") 216 }, 217 } 218 const AudioRenderer = { 219 state: "[PC Preview] unknow state", 220 getRendererInfo: function (...args) { 221 console.warn("AudioRenderer.getRendererInfo interface mocked in the Previewer." + 222 " How this interface works on the Previewer may be different from that on a real device.") 223 const len = args.length 224 if (typeof args[len - 1] === 'function') { 225 args[len - 1].call(this, paramMock.businessErrorMock, AudioRendererInfo); 226 } else { 227 return new Promise((resolve, reject) => { 228 resolve(AudioRendererInfo); 229 }) 230 } 231 }, 232 getStreamInfo: function (...args) { 233 console.warn("AudioRenderer.getStreamInfo interface mocked in the Previewer." + 234 " How this interface works on the Previewer may be different from that on a real device.") 235 const len = args.length 236 if (typeof args[len - 1] === 'function') { 237 args[len - 1].call(this, paramMock.businessErrorMock, AudioStreamInfo); 238 } else { 239 return new Promise((resolve, reject) => { 240 resolve(AudioStreamInfo); 241 }) 242 } 243 }, 244 start: function (...args) { 245 console.warn("AudioRenderer.start interface mocked in the Previewer." + 246 " How this interface works on the Previewer may be different from that on a real device.") 247 const len = args.length 248 if (typeof args[len - 1] === 'function') { 249 args[len - 1].call(this, paramMock.businessErrorMock); 250 } else { 251 return new Promise((resolve, reject) => { 252 resolve(); 253 }) 254 } 255 }, 256 write: function (...args) { 257 console.warn("AudioRenderer.write interface mocked in the Previewer." + 258 " How this interface works on the Previewer may be different from that on a real device.") 259 const len = args.length 260 if (typeof args[len - 1] === 'function') { 261 args[len - 1].call(this, paramMock.businessErrorMock, paramMock.paramNumberMock); 262 } else { 263 return new Promise((resolve, reject) => { 264 resolve(paramMock.paramNumberMock); 265 }) 266 } 267 }, 268 getAudioTime: function (...args) { 269 console.warn("AudioRenderer.getAudioTime interface mocked in the Previewer." + 270 " How this interface works on the Previewer may be different from that on a real device.") 271 const len = args.length 272 if (typeof args[len - 1] === 'function') { 273 args[len - 1].call(this, paramMock.businessErrorMock, paramMock.paramNumberMock); 274 } else { 275 return new Promise((resolve, reject) => { 276 resolve(paramMock.paramNumberMock); 277 }) 278 } 279 }, 280 drain: function (...args) { 281 console.warn("AudioRenderer.drain interface mocked in the Previewer." + 282 " How this interface works on the Previewer may be different from that on a real device.") 283 const len = args.length 284 if (typeof args[len - 1] === 'function') { 285 args[len - 1].call(this, paramMock.businessErrorMock); 286 } else { 287 return new Promise((resolve, reject) => { 288 resolve(); 289 }) 290 } 291 }, 292 pause: function (...args) { 293 console.warn("AudioRenderer.pause interface mocked in the Previewer." + 294 " How this interface works on the Previewer may be different from that on a real device.") 295 const len = args.length 296 if (typeof args[len - 1] === 'function') { 297 args[len - 1].call(this, paramMock.businessErrorMock); 298 } else { 299 return new Promise((resolve, reject) => { 300 resolve(); 301 }) 302 } 303 }, 304 stop: function (...args) { 305 console.warn("AudioRenderer.stop interface mocked in the Previewer." + 306 " How this interface works on the Previewer may be different from that on a real device.") 307 const len = args.length 308 if (typeof args[len - 1] === 'function') { 309 args[len - 1].call(this, paramMock.businessErrorMock); 310 } else { 311 return new Promise((resolve, reject) => { 312 resolve(); 313 }) 314 } 315 }, 316 release: function (...args) { 317 console.warn("AudioRenderer.release interface mocked in the Previewer." + 318 " How this interface works on the Previewer may be different from that on a real device.") 319 const len = args.length 320 if (typeof args[len - 1] === 'function') { 321 args[len - 1].call(this, paramMock.businessErrorMock); 322 } else { 323 return new Promise((resolve, reject) => { 324 resolve(); 325 }) 326 } 327 }, 328 getBufferSize: function (...args) { 329 console.warn("AudioRenderer.getBufferSize interface mocked in the Previewer." + 330 " How this interface works on the Previewer may be different from that on a real device.") 331 const len = args.length 332 if (typeof args[len - 1] === 'function') { 333 args[len - 1].call(this, paramMock.businessErrorMock, paramMock.paramNumberMock); 334 } else { 335 return new Promise((resolve, reject) => { 336 resolve(paramMock.paramNumberMock); 337 }) 338 } 339 }, 340 setRenderRate: function (...args) { 341 console.warn("AudioRenderer.setRenderRate interface mocked in the Previewer." + 342 " How this interface works on the Previewer may be different from that on a real device.") 343 const len = args.length 344 if (typeof args[len - 1] === 'function') { 345 args[len - 1].call(this, paramMock.businessErrorMock); 346 } else { 347 return new Promise((resolve, reject) => { 348 resolve(); 349 }) 350 } 351 }, 352 getRenderRate: function (...args) { 353 console.warn("AudioRenderer.getRenderRate interface mocked in the Previewer." + 354 " How this interface works on the Previewer may be different from that on a real device.") 355 const len = args.length 356 if (typeof args[len - 1] === 'function') { 357 args[len - 1].call(this, paramMock.businessErrorMock, AudioRendererRate); 358 } else { 359 return new Promise((resolve, reject) => { 360 resolve(AudioRendererRate); 361 }) 362 } 363 }, 364 on: function (...args) { 365 console.warn("AudioRenderer.on interface mocked in the Previewer." + 366 " How this interface works on the Previewer may be different from that on a real device.") 367 }, 368 off: function (...args) { 369 console.warn("AudioRenderer.off interface mocked in the Previewer." + 370 " How this interface works on the Previewer may be different from that on a real device.") 371 }, 372 setInterruptMode: function (...args) { 373 console.warn("AudioRenderer.setInterruptMode interface mocked in the Previewer." + 374 " How this interface works on the Previewer may be different from that on a real device.") 375 const len = args.length 376 if (typeof args[len - 1] === 'function') { 377 args[len - 1].call(this, paramMock.businessErrorMock); 378 } else { 379 return new Promise((resolve, reject) => { 380 resolve(); 381 }) 382 } 383 } 384 } 385 const AudioManager = { 386 on: function (...args) { 387 console.warn("AudioManager.on interface mocked in the Previewer." + 388 " How this interface works on the Previewer may be different from that on a real device.") 389 const len = args.length 390 if (typeof args[len - 1] === 'function') { 391 if (args[0] == 'interrupt') { 392 args[len - 1].call(this, interruptAction); 393 } else if (args[0] == 'deviceChange') { 394 args[len - 1].call(this, DeviceChangeAction); 395 } else if (args[0] == 'volumeChange') { 396 args[len - 1].call(this, VolumeEvent); 397 } else if (args[0] == 'ringerModeChange') { 398 args[len - 1].call(this, AudioRingMode); 399 } 400 } 401 }, 402 off: function (...args) { 403 console.warn("AudioManager.off interface mocked in the Previewer." + 404 " How this interface works on the Previewer may be different from that on a real device.") 405 }, 406 getDevices: function (...args) { 407 console.warn("AudioManager.getDevices interface mocked in the Previewer." + 408 " How this interface works on the Previewer may be different from that on a real device.") 409 var AudioDeviceDescriptors = new Array(AudioDeviceDescriptor) 410 const len = args.length 411 if (typeof args[len - 1] === 'function') { 412 args[len - 1].call(this, paramMock.businessErrorMock, AudioDeviceDescriptors); 413 } else { 414 return new Promise((resolve, reject) => { 415 resolve(AudioDeviceDescriptors); 416 }) 417 } 418 }, 419 isDeviceActive: function (...args) { 420 console.warn("AudioManager.isDeviceActive interface mocked in the Previewer." + 421 " How this interface works on the Previewer may be different from that on a real device.") 422 const len = args.length 423 if (typeof args[len - 1] === 'function') { 424 args[len - 1].call(this, paramMock.businessErrorMock, paramMock.paramBooleanMock); 425 } else { 426 return new Promise((resolve, reject) => { 427 resolve(paramMock.paramBooleanMock); 428 }) 429 } 430 }, 431 setDeviceActive: function (...args) { 432 console.warn("AudioManager.setDeviceActive interface mocked in the Previewer." + 433 " How this interface works on the Previewer may be different from that on a real device.") 434 const len = args.length 435 if (typeof args[len - 1] === 'function') { 436 args[len - 1].call(this, paramMock.businessErrorMock); 437 } else { 438 return new Promise((resolve, reject) => { 439 resolve(); 440 }) 441 } 442 }, 443 setRingerMode: function (...args) { 444 console.warn("AudioManager.setRingerMode interface mocked in the Previewer." + 445 " How this interface works on the Previewer may be different from that on a real device.") 446 const len = args.length 447 if (typeof args[len - 1] === 'function') { 448 args[len - 1].call(this, paramMock.businessErrorMock); 449 } else { 450 return new Promise((resolve, reject) => { 451 resolve(); 452 }) 453 } 454 }, 455 setAudioParameter: function (...args) { 456 console.warn("AudioManager.setAudioParameter interface mocked in the Previewer." + 457 " How this interface works on the Previewer may be different from that on a real device.") 458 const len = args.length 459 if (typeof args[len - 1] === 'function') { 460 args[len - 1].call(this, paramMock.businessErrorMock); 461 } else { 462 return new Promise((resolve, reject) => { 463 resolve(); 464 }) 465 } 466 }, 467 setVolume: function (...args) { 468 console.warn("AudioManager.setVolume interface mocked in the Previewer." + 469 " How this interface works on the Previewer may be different from that on a real device.") 470 const len = args.length 471 if (typeof args[len - 1] === 'function') { 472 args[len - 1].call(this, paramMock.businessErrorMock); 473 } else { 474 return new Promise((resolve, reject) => { 475 resolve(); 476 }) 477 } 478 }, 479 getVolume: function (...args) { 480 console.warn("AudioManager.getVolume interface mocked in the Previewer." + 481 " How this interface works on the Previewer may be different from that on a real device.") 482 const len = args.length 483 if (typeof args[len - 1] === 'function') { 484 args[len - 1].call(this, paramMock.businessErrorMock, paramMock.paramNumberMock); 485 } else { 486 return new Promise((resolve, reject) => { 487 resolve(paramMock.paramNumberMock); 488 }) 489 } 490 }, 491 getMinVolume: function (...args) { 492 console.warn("AudioManager.getMinVolume interface mocked in the Previewer." + 493 " How this interface works on the Previewer may be different from that on a real device.") 494 const len = args.length 495 if (typeof args[len - 1] === 'function') { 496 args[len - 1].call(this, paramMock.businessErrorMock, paramMock.paramNumberMock); 497 } else { 498 return new Promise((resolve, reject) => { 499 resolve(paramMock.paramNumberMock); 500 }) 501 } 502 }, 503 getMaxVolume: function (...args) { 504 console.warn("AudioManager.getMaxVolume interface mocked in the Previewer." + 505 " How this interface works on the Previewer may be different from that on a real device.") 506 const len = args.length 507 if (typeof args[len - 1] === 'function') { 508 args[len - 1].call(this, paramMock.businessErrorMock, paramMock.paramNumberMock); 509 } else { 510 return new Promise((resolve, reject) => { 511 resolve(paramMock.paramNumberMock); 512 }) 513 } 514 }, 515 isMute: function (...args) { 516 console.warn("AudioManager.isMute interface mocked in the Previewer." + 517 " How this interface works on the Previewer may be different from that on a real device.") 518 const len = args.length 519 if (typeof args[len - 1] === 'function') { 520 args[len - 1].call(this, paramMock.businessErrorMock, paramMock.paramBooleanMock); 521 } else { 522 return new Promise((resolve, reject) => { 523 resolve(paramMock.paramBooleanMock); 524 }) 525 } 526 }, 527 mute: function (...args) { 528 console.warn("AudioManager.mute interface mocked in the Previewer." + 529 " How this interface works on the Previewer may be different from that on a real device.") 530 const len = args.length 531 if (typeof args[len - 1] === 'function') { 532 args[len - 1].call(this, paramMock.businessErrorMock); 533 } else { 534 return new Promise((resolve, reject) => { 535 resolve(); 536 }) 537 } 538 }, 539 isActive: function (...args) { 540 console.warn("AudioManager.isActive interface mocked in the Previewer." + 541 " How this interface works on the Previewer may be different from that on a real device.") 542 const len = args.length 543 if (typeof args[len - 1] === 'function') { 544 args[len - 1].call(this, paramMock.businessErrorMock, paramMock.paramBooleanMock); 545 } else { 546 return new Promise((resolve, reject) => { 547 resolve(paramMock.paramBooleanMock); 548 }) 549 } 550 }, 551 isMicrophoneMute: function (...args) { 552 console.warn("AudioManager.isMicrophoneMute interface mocked in the Previewer." + 553 " How this interface works on the Previewer may be different from that on a real device.") 554 const len = args.length 555 if (typeof args[len - 1] === 'function') { 556 args[len - 1].call(this, paramMock.businessErrorMock, paramMock.paramBooleanMock); 557 } else { 558 return new Promise((resolve, reject) => { 559 resolve(paramMock.paramBooleanMock); 560 }) 561 } 562 }, 563 setMicrophoneMute: function (...args) { 564 console.warn("AudioManager.setMicrophoneMute interface mocked in the Previewer." + 565 " How this interface works on the Previewer may be different from that on a real device.") 566 const len = args.length 567 if (typeof args[len - 1] === 'function') { 568 args[len - 1].call(this, paramMock.businessErrorMock); 569 } else { 570 return new Promise((resolve, reject) => { 571 resolve(); 572 }) 573 } 574 }, 575 getAudioParameter: function (...args) { 576 console.warn("AudioManager.getAudioParameter interface mocked in the Previewer." + 577 " How this interface works on the Previewer may be different from that on a real device.") 578 const len = args.length 579 if (typeof args[len - 1] === 'function') { 580 args[len - 1].call(this, paramMock.businessErrorMock, paramMock.paramStringMock); 581 } else { 582 return new Promise((resolve, reject) => { 583 resolve(paramMock.paramStringMock); 584 }) 585 } 586 }, 587 getRingerMode: function (...args) { 588 console.warn("AudioManager.getRingerMode interface mocked in the Previewer." + 589 " How this interface works on the Previewer may be different from that on a real device.") 590 const len = args.length 591 if (typeof args[len - 1] === 'function') { 592 args[len - 1].call(this, paramMock.businessErrorMock, AudioRingMode); 593 } else { 594 return new Promise((resolve, reject) => { 595 resolve(AudioRingMode); 596 }) 597 } 598 }, 599 setAudioScene: function (...args) { 600 console.warn("AudioManager.setAudioScene interface mocked in the Previewer." + 601 " How this interface works on the Previewer may be different from that on a real device.") 602 const len = args.length 603 if (typeof args[len - 1] === 'function') { 604 args[len - 1].call(this, paramMock.businessErrorMock); 605 } else { 606 return new Promise((resolve, reject) => { 607 resolve(); 608 }) 609 } 610 }, 611 getAudioScene: function (...args) { 612 console.warn("AudioManager.getAudioScene interface mocked in the Previewer." + 613 " How this interface works on the Previewer may be different from that on a real device.") 614 const len = args.length 615 if (typeof args[len - 1] === 'function') { 616 args[len - 1].call(this, paramMock.businessErrorMock, AudioScene); 617 } else { 618 return new Promise((resolve, reject) => { 619 resolve(AudioScene); 620 }) 621 } 622 }, 623 requestIndependentInterrupt: function (...args) { 624 console.warn("AudioManager.requestIndependentInterrupt interface mocked in the Previewer." + 625 " How this interface works on the Previewer may be different from that on a real device.") 626 const len = args.length 627 if (typeof args[len - 1] === 'function') { 628 args[len - 1].call(this, paramMock.businessErrorMock,paramMock.paramBooleanMock); 629 } else { 630 return new Promise((resolve, reject) => { 631 resolve(paramMock.paramBooleanMock); 632 }) 633 } 634 }, 635 abandonIndependentInterrupt: function (...args) { 636 console.warn("AudioManager.abandonIndependentInterrupt interface mocked in the Previewer." + 637 " How this interface works on the Previewer may be different from that on a real device.") 638 const len = args.length 639 if (typeof args[len - 1] === 'function') { 640 args[len - 1].call(this, paramMock.businessErrorMock,paramMock.paramBooleanMock); 641 } else { 642 return new Promise((resolve, reject) => { 643 resolve(paramMock.paramBooleanMock); 644 }) 645 } 646 }, 647 getStreamManager: function (...args) { 648 console.warn("AudioManager.getStreamManager interface mocked in the Previewer." + 649 " How this interface works on the Previewer may be different from that on a real device.") 650 const len = args.length 651 if (typeof args[len - 1] === 'function') { 652 args[len - 1].call(this, paramMock.businessErrorMock, AudioStreamManager); 653 } else { 654 return new Promise((resolve, reject) => { 655 resolve(AudioStreamManager); 656 }) 657 } 658 }, 659 getRoutingManager: function (...args) { 660 console.warn("AudioManager.getRoutingManager interface mocked in the Previewer." + 661 " How this interface works on the Previewer may be different from that on a real device.") 662 const len = args.length 663 if (typeof args[len - 1] === 'function') { 664 args[len - 1].call(this, paramMock.businessErrorMock, AudioRoutingManager); 665 } else { 666 return new Promise((resolve, reject) => { 667 resolve(AudioRoutingManager); 668 }) 669 } 670 }, 671 getVolumeGroups: function (...args) { 672 console.warn("AudioManager.getVolumeGroups interface mocked in the Previewer." + 673 " How this interface works on the Previewer may be different from that on a real device.") 674 var VolumeGroupInfos = new Array(VolumeGroupInfo) 675 const len = args.length 676 if (typeof args[len - 1] === 'function') { 677 args[len - 1].call(this, paramMock.businessErrorMock, VolumeGroupInfos); 678 } else { 679 return new Promise((resolve, reject) => { 680 resolve(VolumeGroupInfos); 681 }) 682 } 683 }, 684 getGroupManager: function (...args) { 685 console.warn("AudioManager.getGroupManager interface mocked in the Previewer." + 686 " How this interface works on the Previewer may be different from that on a real device.") 687 const len = args.length 688 if (typeof args[len - 1] === 'function') { 689 args[len - 1].call(this, paramMock.businessErrorMock, AudioGroupManager); 690 } else { 691 return new Promise((resolve, reject) => { 692 resolve(AudioGroupManager); 693 }) 694 } 695 } 696 } 697 const AudioStreamManager = { 698 on: function (...args) { 699 const len = args.length 700 if (typeof args[len - 1] === 'function') { 701 if (args[0] == 'audioRendererChange') { 702 console.warn("AudioStreamManager.on_audioRendererChange interface mocked in the Previewer." + 703 " How this interface works on the Previewer may be different from that on a real device.") 704 } else if (args[0] == 'audioCapturerChange') { 705 console.warn("AudioStreamManager.on_audioCapturerChange interface mocked in the Previewer." + 706 " How this interface works on the Previewer may be different from that on a real device.") 707 } 708 } 709 }, 710 off: function (...args) { 711 console.warn("AudioStreamManager.off interface mocked in the Previewer." + 712 " How this interface works on the Previewer may be different from that on a real device.") 713 }, 714 getCurrentAudioRendererInfoArray: function (...args) { 715 console.warn("AudioStreamManager.getCurrentAudioRendererInfoArray interface mocked in the Previewer." + 716 " How this interface works on the Previewer may be different from that on a real device.") 717 var AudioRendererChangeInfoArray = new Array(AudioRendererChangeInfo) 718 const len = args.length 719 if (typeof args[len - 1] === 'function') { 720 args[len - 1].call(this, paramMock.businessErrorMock, AudioRendererChangeInfoArray); 721 } else { 722 return new Promise((resolve, reject) => { 723 resolve(AudioRendererChangeInfoArray); 724 }) 725 } 726 }, 727 getCurrentAudioCapturerInfoArray: function (...args) { 728 console.warn("AudioStreamManager.getCurrentAudioCapturerInfoArray interface mocked in the Previewer." + 729 " How this interface works on the Previewer may be different from that on a real device.") 730 var AudioCapturerChangeInfoArray = new Array(AudioCapturerChangeInfo) 731 const len = args.length 732 if (typeof args[len - 1] === 'function') { 733 args[len - 1].call(this, paramMock.businessErrorMock, AudioCapturerChangeInfoArray); 734 } else { 735 return new Promise((resolve, reject) => { 736 resolve(AudioCapturerChangeInfoArray); 737 }) 738 } 739 } 740 } 741 const AudioRoutingManager = { 742 on: function (...args) { 743 console.warn("AudioRoutingManager.on_deviceChange interface mocked in the Previewer." + 744 " How this interface works on the Previewer may be different from that on a real device.") 745 const len = args.length 746 if (typeof args[len - 1] === 'function') { 747 if (args[0] == 'deviceChange') { 748 args[len-1].call(this,DeviceChangeAction); 749 } 750 } 751 }, 752 off: function (...args) { 753 console.warn("AudioRoutingManager.off interface mocked in the Previewer." + 754 " How this interface works on the Previewer may be different from that on a real device.") 755 if (typeof args[len - 1] === 'function') { 756 if (args[0] == 'deviceChange') { 757 args[len-1].call(this,DeviceChangeAction); 758 } 759 } 760 }, 761 getDevices: function (...args) { 762 console.warn("AudioRoutingManager.getDevices interface mocked in the Previewer." + 763 " How this interface works on the Previewer may be different from that on a real device.") 764 var AudioDeviceDescriptors = new Array(AudioDeviceDescriptor) 765 const len = args.length 766 if (typeof args[len - 1] === 'function') { 767 args[len - 1].call(this, paramMock.businessErrorMock, AudioDeviceDescriptors); 768 } else { 769 return new Promise((resolve, reject) => { 770 resolve(AudioDeviceDescriptors); 771 }) 772 } 773 }, 774 selectOutputDevice: function (...args) { 775 console.warn("AudioRoutingManager.selectOutputDevice interface mocked in the Previewer." + 776 " How this interface works on the Previewer may be different from that on a real device.") 777 if (typeof args[len - 1] === 'function') { 778 args[len - 1].call(this, paramMock.businessErrorMock); 779 } else { 780 return new Promise((resolve, reject) => { 781 resolve(); 782 }) 783 } 784 }, 785 selectOutputDeviceByFilter: function (...args) { 786 console.warn("AudioRoutingManager.selectOutputDeviceByFilter interface mocked in the Previewer." + 787 " How this interface works on the Previewer may be different from that on a real device.") 788 if (typeof args[len - 1] === 'function') { 789 args[len - 1].call(this, paramMock.businessErrorMock); 790 } else { 791 return new Promise((resolve, reject) => { 792 resolve(); 793 }) 794 } 795 } 796 } 797 const AudioGroupManager = { 798 setVolume: function (...args) { 799 console.warn("AudioGroupManager.setVolume interface mocked in the Previewer." + 800 " How this interface works on the Previewer may be different from that on a real device.") 801 const len = args.length 802 if (typeof args[len - 1] === 'function') { 803 args[len - 1].call(this, paramMock.businessErrorMock); 804 } else { 805 return new Promise((resolve, reject) => { 806 resolve(); 807 }) 808 } 809 }, 810 getVolume: function (...args) { 811 console.warn("AudioGroupManager.getVolume interface mocked in the Previewer." + 812 " How this interface works on the Previewer may be different from that on a real device.") 813 const len = args.length 814 if (typeof args[len - 1] === 'function') { 815 args[len - 1].call(this, paramMock.businessErrorMock, paramMock.paramNumberMock); 816 } else { 817 return new Promise((resolve, reject) => { 818 resolve(paramMock.paramNumberMock); 819 }) 820 } 821 }, 822 getMinVolume: function (...args) { 823 console.warn("AudioGroupManager.getMinVolume interface mocked in the Previewer." + 824 " How this interface works on the Previewer may be different from that on a real device.") 825 const len = args.length 826 if (typeof args[len - 1] === 'function') { 827 args[len - 1].call(this, paramMock.businessErrorMock, paramMock.paramNumberMock); 828 } else { 829 return new Promise((resolve, reject) => { 830 resolve(paramMock.paramNumberMock); 831 }) 832 } 833 }, 834 getMaxVolume: function (...args) { 835 console.warn("AudioGroupManager.getMaxVolume interface mocked in the Previewer." + 836 " How this interface works on the Previewer may be different from that on a real device.") 837 const len = args.length 838 if (typeof args[len - 1] === 'function') { 839 args[len - 1].call(this, paramMock.businessErrorMock, paramMock.paramNumberMock); 840 } else { 841 return new Promise((resolve, reject) => { 842 resolve(paramMock.paramNumberMock); 843 }) 844 } 845 }, 846 isMute: function (...args) { 847 console.warn("AudioGroupManager.isMute interface mocked in the Previewer." + 848 " How this interface works on the Previewer may be different from that on a real device.") 849 const len = args.length 850 if (typeof args[len - 1] === 'function') { 851 args[len - 1].call(this, paramMock.businessErrorMock, paramMock.paramBooleanMock); 852 } else { 853 return new Promise((resolve, reject) => { 854 resolve(paramMock.paramBooleanMock); 855 }) 856 } 857 }, 858 mute: function (...args) { 859 console.warn("AudioGroupManager.mute interface mocked in the Previewer." + 860 " How this interface works on the Previewer may be different from that on a real device.") 861 const len = args.length 862 if (typeof args[len - 1] === 'function') { 863 args[len - 1].call(this, paramMock.businessErrorMock); 864 } else { 865 return new Promise((resolve, reject) => { 866 resolve(); 867 }) 868 } 869 }, 870 } 871 const audio = { 872 LOCAL_NETWORK_ID: "LocalDevice", 873 AudioState: { 874 STATE_INVALID: -1, 875 STATE_NEW: 0, 876 STATE_PREPARED: 1, 877 STATE_RUNNING: 2, 878 STATE_STOPPED: 3, 879 STATE_RELEASED:4, 880 STATE_PAUSED: 5, 881 }, 882 AudioVolumeType: { 883 VOICE_CALL: 0, 884 RINGTONE: 2, 885 MEDIA: 3, 886 VOICE_ASSISTANT: 9, 887 ALL:100 888 }, 889 ContentType: { 890 CONTENT_TYPE_UNKNOWN: 0, 891 CONTENT_TYPE_SPEECH: 1, 892 CONTENT_TYPE_MUSIC: 2, 893 CONTENT_TYPE_MOVIE: 3, 894 CONTENT_TYPE_SONIFICATION: 4, 895 CONTENT_TYPE_RINGTONE: 5, 896 }, 897 StreamUsage: { 898 STREAM_USAGE_UNKNOWN: 0, 899 STREAM_USAGE_MEDIA: 1, 900 STREAM_USAGE_VOICE_COMMUNICATION: 2, 901 STREAM_USAGE_NOTIFICATION_RINGTONE: 6, 902 }, 903 DeviceFlag: { 904 OUTPUT_DEVICES_FLAG: 1, 905 INPUT_DEVICES_FLAG: 2, 906 ALL_DEVICES_FLAG: 3, 907 }, 908 ActiveDeviceType: { 909 SPEAKER: 2, 910 BLUETOOTH_SCO: 7, 911 }, 912 AudioRingMode: { 913 RINGER_MODE_NORMAL: 2, 914 RINGER_MODE_SILENT: 0, 915 RINGER_MODE_VIBRATE: 1, 916 }, 917 AudioSampleFormat: { 918 SAMPLE_FORMAT_INVALID: -1, 919 SAMPLE_FORMAT_U8: 0, 920 SAMPLE_FORMAT_S16LE: 1, 921 SAMPLE_FORMAT_S24LE: 2, 922 SAMPLE_FORMAT_S32LE: 3, 923 SAMPLE_FORMAT_F32LE: 4, 924 }, 925 AudioChannel: { 926 CHANNEL_1: 1, 927 CHANNEL_2: 2, 928 }, 929 AudioSamplingRate: { 930 SAMPLE_RATE_8000: 8000, 931 SAMPLE_RATE_11025: 11025, 932 SAMPLE_RATE_12000: 12000, 933 SAMPLE_RATE_16000: 16000, 934 SAMPLE_RATE_22050: 22050, 935 SAMPLE_RATE_24000: 24000, 936 SAMPLE_RATE_32000: 32000, 937 SAMPLE_RATE_44100: 44100, 938 SAMPLE_RATE_48000: 48000, 939 SAMPLE_RATE_64000: 64000, 940 SAMPLE_RATE_96000: 96000, 941 }, 942 AudioEncodingType: { 943 ENCODING_TYPE_INVALID: -1, 944 ENCODING_TYPE_RAW: 0, 945 }, 946 AudioRendererRate: { 947 RENDER_RATE_NORMAL: 0, 948 RENDER_RATE_DOUBLE: 1, 949 RENDER_RATE_HALF: 2, 950 }, 951 SourceType: { 952 SOURCE_TYPE_INVALID: -1, 953 SOURCE_TYPE_MIC: 0, 954 SOURCE_TYPE_VOICE_COMMUNICATION: 7, 955 }, 956 AudioScene: { 957 AUDIO_SCENE_DEFAULT: 0, 958 AUDIO_SCENE_RINGING: 1, 959 AUDIO_SCENE_PHONE_CALL: 2, 960 AUDIO_SCENE_VOICE_CHAT: 3, 961 }, 962 InterruptType: { 963 INTERRUPT_TYPE_BEGIN: 1, 964 INTERRUPT_TYPE_END: 2, 965 }, 966 InterruptForceType: { 967 INTERRUPT_FORCE: 0, 968 INTERRUPT_SHARE: 1, 969 }, 970 FocusType: { 971 FOCUS_TYPE_RECORDING: 0, 972 }, 973 InterruptMode: { 974 SHARE_MODE: 0, 975 INDEPENDENT_MODE: 1 976 }, 977 DeviceRole: { 978 INPUT_DEVICE: 1, 979 OUTPUT_DEVICE: 2 980 }, 981 DeviceType: { 982 INVALID: 0, 983 EARPIECE: 1, 984 SPEAKER: 2, 985 WIRED_HEADSET: 3, 986 WIRED_HEADPHONES: 4, 987 BLUETOOTH_SCO: 7, 988 BLUETOOTH_A2DP: 8, 989 MIC: 15, 990 USB_HEADSET: 22 991 }, 992 InterruptHint: { 993 INTERRUPT_HINT_NONE: 0, 994 INTERRUPT_HINT_RESUME: 1, 995 INTERRUPT_HINT_PAUSE: 2, 996 INTERRUPT_HINT_STOP: 3, 997 INTERRUPT_HINT_DUCK: 4, 998 INTERRUPT_HINT_UNDUCK: 5 999 }, 1000 InterruptActionType: { 1001 TYPE_ACTIVATED: 0, 1002 TYPE_INTERRUPT: 1 1003 }, 1004 DeviceChangeType: { 1005 CONNECT: 0, 1006 DISCONNECT: 1 1007 }, 1008 ConnectType: { 1009 CONNECT_TYPE_LOCAL: 1, 1010 CONNECT_TYPE_DISTRIBUTED: 2 1011 }, 1012 getAudioManager: function () { 1013 console.warn("audio.getAudioManager interface mocked in the Previewer." + 1014 " How this interface works on the Previewer may be different from that on a real device.") 1015 return AudioManager; 1016 }, 1017 createAudioCapturer: function (...args) { 1018 console.warn("audio.createAudioCapturer interface mocked in the Previewer." + 1019 " How this interface works on the Previewer may be different from that on a real device.") 1020 const len = args.length 1021 if (typeof args[len - 1] === 'function') { 1022 args[len - 1].call(this, paramMock.businessErrorMock, AudioCapturer); 1023 } else { 1024 return new Promise((resolve, reject) => { 1025 resolve(AudioCapturer); 1026 }) 1027 } 1028 }, 1029 createAudioRenderer: function (...args) { 1030 console.warn("audio.createAudioRenderer interface mocked in the Previewer." + 1031 " How this interface works on the Previewer may be different from that on a real device.") 1032 const len = args.length 1033 if (typeof args[len - 1] === 'function') { 1034 args[len - 1].call(this, paramMock.businessErrorMock, AudioRenderer); 1035 } else { 1036 return new Promise((resolve, reject) => { 1037 resolve(AudioRenderer); 1038 }) 1039 } 1040 } 1041 } 1042 return audio; 1043} 1044