diff --git a/src/Client/UniScan.Client.App.Platform.iOS/AppDelegate.cs b/src/Client/UniScan.Client.App.Platform.iOS/AppDelegate.cs index 8d9e5c6..c8e7a71 100755 --- a/src/Client/UniScan.Client.App.Platform.iOS/AppDelegate.cs +++ b/src/Client/UniScan.Client.App.Platform.iOS/AppDelegate.cs @@ -1,3 +1,7 @@ +using Avalonia; +using Avalonia.iOS; +using Foundation; + namespace UniScan.Client.App.Platform.iOS; // The UIApplicationDelegate for the application. This class is responsible for launching the @@ -5,7 +9,7 @@ namespace UniScan.Client.App.Platform.iOS; // application events from iOS. [Register("AppDelegate")] #pragma warning disable CA1711 // Identifiers should not have incorrect suffix -public partial class AppDelegate : AvaloniaAppDelegate +public partial class AppDelegate : AvaloniaAppDelegate #pragma warning restore CA1711 // Identifiers should not have incorrect suffix { protected override AppBuilder CustomizeAppBuilder(AppBuilder builder) diff --git a/src/Client/UniScan.Client.App.Platform.iOS/Main.cs b/src/Client/UniScan.Client.App.Platform.iOS/Main.cs index 7d952f4..c154dd5 100755 --- a/src/Client/UniScan.Client.App.Platform.iOS/Main.cs +++ b/src/Client/UniScan.Client.App.Platform.iOS/Main.cs @@ -1,3 +1,9 @@ +using System.Threading.Tasks; +using UIKit; +using UniScan.Platform; +using UniScan.Platform.Implementations.Native; +using UniScan.Platform.Implementations.Native.Filesystem; + namespace UniScan.Client.App.Platform.iOS; public class Application @@ -5,6 +11,8 @@ public class Application // This is the main entry point of the application. static void Main(string[] args) { + UniScanApp.InitializePlatform += () => Task.FromResult(new HostEnvironment(new iOSPaths(), new NativePlatformSerilogInitializer(UniScan.Core.Constants.ConsoleOutputTemplate, UniScan.Core.Constants.FileOutputTemplate), new NativeDirectoryManager(), new NativeFileManager())); + // if you want to use a different Application Delegate class from "AppDelegate" // you can specify it here. UIApplication.Main(args, null, typeof(AppDelegate)); diff --git a/src/Client/UniScan.Client.App.Platform.iOS/UniScan.Client.App.Platform.iOS.csproj b/src/Client/UniScan.Client.App.Platform.iOS/UniScan.Client.App.Platform.iOS.csproj index adfcc1f..b091f6f 100755 --- a/src/Client/UniScan.Client.App.Platform.iOS/UniScan.Client.App.Platform.iOS.csproj +++ b/src/Client/UniScan.Client.App.Platform.iOS/UniScan.Client.App.Platform.iOS.csproj @@ -14,7 +14,8 @@ - - + + + diff --git a/src/Client/UniScan.Client.App.Platform.iOS/iOSPaths.cs b/src/Client/UniScan.Client.App.Platform.iOS/iOSPaths.cs new file mode 100644 index 0000000..16b9f6c --- /dev/null +++ b/src/Client/UniScan.Client.App.Platform.iOS/iOSPaths.cs @@ -0,0 +1,15 @@ +using System; +using System.IO; +using UniScan.Client.Core; +using UniScan.Platform; + +namespace UniScan.Client.App.Platform.iOS; + +public class iOSPaths : IPlatformStandardPaths +{ + public string DataPath => Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData); + + public string ConfigPath => Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData); + + public string CachePath => Path.Combine(DataPath, ".cache"); +} \ No newline at end of file