M3(批5): AudioProvider 播放 + 七牛上传器(@qiniu/upload)

依赖:ohpm i @qiniu/upload@1.0.2(platform)

platform QiniuUploader:UploadFile.fromPath + key + createMultipartUploadV2Task(context,file,{tokenProvider})。
  🔴 token 走 tokenProvider(服务端用 AK/SK 生成 uploadToken(bucket)),AK/SK 不入端——纠正原 Android 硬编码 AK/SK

T-M3-10 AudioProvider(@kit.MediaKit AVPlayer):
  - mediaTypeAudio:播放语音 url → gameui_play_voice/gameui_stop_voice(user 透传)
  - srcIsloop:播放本地 wav(<gameDir>/assets/wav/<src>,isloop 0一次/>0循环/<0停止)
  - voicePlaying:静音总开关 setVolume
  - prepareaudio:录音分档(QiniuUploader 链路就绪;按住说话手势+麦克风+七牛服务端 token 三依赖未就绪前安全空实现)

bucket/域名/key 规则对齐原工程(bucket gameauio、回放 http://gameaudio.daoqi88.cn/<key>,由服务端 token 与 AudioProvider 接入时落地)
devecocli build 通过(CompileArkTS 编译七牛/音频无误)。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
lanterngamescn
2026-06-25 20:14:02 +08:00
parent 829f267966
commit 4a8524bcbe
10 changed files with 261 additions and 7 deletions
+2 -1
View File
@@ -8,7 +8,7 @@
import { CapabilityProvider, EchoSampleProvider, RoomStubProvider, PayStubProvider,
VibrateProvider, ClipboardProvider, AppSystemProvider, DeviceProvider,
NetworkProvider, ShareProvider, LoginProvider, PhotoProvider, ShakeProvider,
ScanProvider, CameraProvider, LocationProvider } from 'feature_capabilities';
ScanProvider, CameraProvider, LocationProvider, AudioProvider } from 'feature_capabilities';
export function buildCapabilities(): CapabilityProvider[] {
return [
@@ -26,6 +26,7 @@ export function buildCapabilities(): CapabilityProvider[] {
new ScanProvider(), // opensaoma → getsaomaData
new CameraProvider(), // opencamera → getcameraaAddress
new LocationProvider(), // startlocation/getlocationinfo → getlocationinfo
new AudioProvider(), // mediaTypeAudio/srcIsloop/voicePlaying(播放);prepareaudio 录音分档
// —— 暂缓能力占位桩(§6.5)——
new RoomStubProvider(),
new PayStubProvider(),