- 移除 EchoSampleProvider(组装根/导出/文件):M3 全部 Provider 已就位, getTime 由 DeviceProvider 提供;样板回显仅 M1 测试页用,生产无依赖 - getcompareCode:启动期 StartupOrchestrator 把网络 App 版本(VersionDecision.appVersion) 存 KvStore(KV_KEY_NET_APP_VERSION),DeviceProvider 同步读出与本地 config.appversion 比较, 本地>网络→'1' 否则'0'(对齐 Android apputil.code 语义) - app_gamename:VersionXml.parse 解析子 <game name>;ResourceManager.localGameName 暴露; AppDataInjector.buildValues 接 gameName 参数;大厅/子游戏两处注入均填入 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
35 lines
2.5 KiB
Plaintext
35 lines
2.5 KiB
Plaintext
/**
|
||
* 组装根(框架 §6.2 DI)。**唯一知道"全部能力"的地方**。
|
||
*
|
||
* 桥核心、容器都不感知具体能力;新增/裁剪能力只改这里一行。
|
||
* M2:仅示例能力(验证插件模式)。M3:替换为全部真实 Provider + 占位桩
|
||
* (RoomStubProvider/PayStubProvider,§6.5),契约 handler 名/数量不变。
|
||
*/
|
||
import { CapabilityProvider, RoomStubProvider, PayStubProvider,
|
||
VibrateProvider, ClipboardProvider, AppSystemProvider, DeviceProvider,
|
||
NetworkProvider, ShareProvider, LoginProvider, PhotoProvider, ShakeProvider,
|
||
ScanProvider, CameraProvider, LocationProvider, AudioProvider, NavProvider } from 'feature_capabilities';
|
||
|
||
export function buildCapabilities(): CapabilityProvider[] {
|
||
return [
|
||
// —— M3 已落地能力(顺序无关,互不依赖)——
|
||
new AppSystemProvider(), // orientation/browser/finsh/openApplyDownloadpath/notification
|
||
new VibrateProvider(), // vibrator/repeatvibrator/canclevibrator
|
||
new ClipboardProvider(), // gameCopytext/gamepastetext
|
||
new DeviceProvider(), // getTime/getphonestate/getbattery/getwifiLevel/getphoneInfo/getmarketname/getothername/getOther/getcompareCode
|
||
new NetworkProvider(), // getnetwork + 出站广播
|
||
new ShareProvider(), // friendsSharetypeUrlToptitleDescript → sharesuccess(微信)
|
||
new LoginProvider(), // accreditlogin → sharelogin(微信 code 模式,profile 待服务端)
|
||
new PhotoProvider(), // getphoto 批量下载 → getphoto
|
||
new ShakeProvider(), // startshake/SwitchShake/stopshake → shakeEnd
|
||
new ScanProvider(), // opensaoma → getsaomaData
|
||
new CameraProvider(), // opencamera → getcameraaAddress
|
||
new LocationProvider(), // startlocation/getlocationinfo → getlocationinfo
|
||
new AudioProvider(), // mediaTypeAudio/srcIsloop/voicePlaying(播放);prepareaudio 录音分档
|
||
new NavProvider(), // OpenurlTitleData/SwitchOverGameData/getGameinstall/backgameData
|
||
// —— 暂缓能力占位桩(§6.5)——
|
||
new RoomStubProvider(),
|
||
new PayStubProvider(),
|
||
];
|
||
}
|