install method

Future<void> install()

安装APK(仅 Android)

Implementation

Future<void> install() async {
  _assertAndroid();

  if (statusNotifier.value != DownloadStatus.finished || _savePath == null) {
    _emit(UpgraderEventType.installError, '文件未下载完成,无法安装', {
      'status': statusNotifier.value.name,
      'savePath': _savePath,
    });
    return;
  }

  _emit(UpgraderEventType.installStart, '准备安装 APK', {
    'filePath': _savePath,
  });

  try {
    await TinyUpgraderPlatform.instance.installApk(_savePath!);
    _emit(UpgraderEventType.installComplete, 'APK 安装请求已发送');
  } catch (e) {
    _emit(UpgraderEventType.installError, '安装失败', {
      'error': e.toString(),
      'filePath': _savePath,
    });
    _errorHandler?.call(e);
  }
}