diff --git a/MetaforceInstaller.Core/Services/AdbService.cs b/MetaforceInstaller.Core/Services/AdbService.cs index e0e4920..ddf790f 100644 --- a/MetaforceInstaller.Core/Services/AdbService.cs +++ b/MetaforceInstaller.Core/Services/AdbService.cs @@ -2,6 +2,7 @@ using System.Reflection; using AdvancedSharpAdbClient; using AdvancedSharpAdbClient.DeviceCommands; using AdvancedSharpAdbClient.Models; +using AdvancedSharpAdbClient.Receivers; using MetaforceInstaller.Core.Intefaces; using MetaforceInstaller.Core.Models; using Microsoft.Extensions.Logging; @@ -154,6 +155,17 @@ public class AdbService : IAdbService TotalBytes = fileInfo.Length }); + var remoteDir = Path.GetDirectoryName(remotePath)?.Replace('\\', '/'); + if (!string.IsNullOrEmpty(remoteDir)) + { + var reciever = new ConsoleOutputReceiver(); + await Task.Run( + () => { _adbClient.ExecuteRemoteCommand($"mkdir -p \"{remoteDir}\"", _deviceData, reciever); }, + cancellationToken); + } + + _logger.LogInformation($"Ensured remote directory: {remoteDir}"); + await Task.Run(() => { using var fileStream = File.OpenRead(localPath); diff --git a/MetaforceInstaller.UI/MetaforceInstaller.UI.csproj b/MetaforceInstaller.UI/MetaforceInstaller.UI.csproj index ce7d888..26ffaf3 100644 --- a/MetaforceInstaller.UI/MetaforceInstaller.UI.csproj +++ b/MetaforceInstaller.UI/MetaforceInstaller.UI.csproj @@ -8,6 +8,7 @@ true app.manifest true + 1.2.1