using System; using Cysharp.Threading.Tasks; /// /// 平台服务接口,封装各小游戏平台的 API 差异 /// public interface IPlatformService { /// /// 初始化平台 SDK /// /// 初始化是否成功 UniTask InitAsync(); /// /// 获取平台类型 /// PlatformType GetPlatformType(); /// /// 登录(获取用户授权) /// /// 登录结果 UniTask LoginAsync(); /// /// 分享内容 /// /// 分享数据 /// 分享是否成功 UniTask ShareAsync(ShareData shareData); /// /// 显示广告 /// /// 广告类型 /// 广告结果 UniTask ShowAdAsync(AdType adType); /// /// 保存数据到本地存储 /// /// 键 /// 值(JSON 字符串) /// 保存是否成功 UniTask SaveDataAsync(string key, string value); /// /// 从本地存储加载数据 /// /// 键 /// 值(JSON 字符串),如果不存在返回 null UniTask LoadDataAsync(string key); /// /// 下载文件到本地 /// /// 远程 URL /// 本地路径 /// 进度回调 /// 本地文件路径,失败返回 null UniTask DownloadFileAsync(string url, string localPath, Action onProgress = null); /// /// 获取系统信息 /// /// 系统信息 SystemInfo GetSystemInfo(); /// /// 震动反馈 /// /// 震动类型 void Vibrate(VibrationType vibrationType); }