mirror of
				https://github.com/Nioux/AideDeJeu.git
				synced 2025-10-30 23:16:09 +00:00 
			
		
		
		
	v1.30 UWP
This commit is contained in:
		
							parent
							
								
									ea0fa6b254
								
							
						
					
					
						commit
						02062c8b9c
					
				
					 3 changed files with 56 additions and 12 deletions
				
			
		|  | @ -112,6 +112,9 @@ | ||||||
|     <EmbeddedResource Include="..\..\Data\library.db"> |     <EmbeddedResource Include="..\..\Data\library.db"> | ||||||
|       <Link>library.db</Link> |       <Link>library.db</Link> | ||||||
|     </EmbeddedResource> |     </EmbeddedResource> | ||||||
|  |     <EmbeddedResource Include="..\..\Data\library.ver"> | ||||||
|  |       <Link>library.ver</Link> | ||||||
|  |     </EmbeddedResource> | ||||||
|     <None Include="AideDeJeu.UWP_StoreKey.pfx" /> |     <None Include="AideDeJeu.UWP_StoreKey.pfx" /> | ||||||
|     <None Include="AideDeJeu.UWP_TemporaryKey.pfx" /> |     <None Include="AideDeJeu.UWP_TemporaryKey.pfx" /> | ||||||
|     <Content Include="Assets\Fonts\LinLibertine_R.ttf" /> |     <Content Include="Assets\Fonts\LinLibertine_R.ttf" /> | ||||||
|  |  | ||||||
|  | @ -25,21 +25,62 @@ namespace AideDeJeu.UWP | ||||||
| 
 | 
 | ||||||
|         public async Task<string> GetDatabasePathAsync(string databaseName) |         public async Task<string> GetDatabasePathAsync(string databaseName) | ||||||
|         { |         { | ||||||
|             var documentsDirectoryPath = Windows.Storage.ApplicationData.Current.LocalFolder.Path; |             if (await CheckDatabaseVersionAsync(databaseName)) | ||||||
|             var path = Path.Combine(documentsDirectoryPath, $"{databaseName}.db"); |             { | ||||||
|  |                 await CopyOldToNewFileAsync(databaseName, "db"); | ||||||
|  |                 await CopyOldToNewFileAsync(databaseName, "ver"); | ||||||
|  |             } | ||||||
|  |             return GetNewFilePath(databaseName, "db"); | ||||||
|  |         } | ||||||
| 
 | 
 | ||||||
|             if (!File.Exists(path)) |         public Stream GetOldFileStream(string fileName, string extension) | ||||||
|         { |         { | ||||||
|             var assembly = typeof(Version_UWP).GetTypeInfo().Assembly; |             var assembly = typeof(Version_UWP).GetTypeInfo().Assembly; | ||||||
|                 using (var inStream = assembly.GetManifestResourceStream($"AideDeJeu.UWP.{databaseName}.db")) |             return assembly.GetManifestResourceStream($"AideDeJeu.UWP.{fileName}.{extension}"); | ||||||
|  |         } | ||||||
|  |         public string GetNewFilePath(string fileName, string extension) | ||||||
|         { |         { | ||||||
|                     using (var outStream = new FileStream(path, FileMode.Create)) |             var documentsDirectoryPath = Windows.Storage.ApplicationData.Current.LocalFolder.Path; | ||||||
|  |             return Path.Combine(documentsDirectoryPath, $"{fileName}.{extension}"); | ||||||
|  |         } | ||||||
|  |         public async Task CopyOldToNewFileAsync(string fileName, string extension) | ||||||
|  |         { | ||||||
|  |             using (var inStream = GetOldFileStream(fileName, extension)) | ||||||
|  |             { | ||||||
|  |                 using (var outStream = new FileStream(GetNewFilePath(fileName, extension), FileMode.Create)) | ||||||
|                 { |                 { | ||||||
|                     await inStream.CopyToAsync(outStream); |                     await inStream.CopyToAsync(outStream); | ||||||
|                 } |                 } | ||||||
|             } |             } | ||||||
|         } |         } | ||||||
|             return path; | 
 | ||||||
|  |         public async Task<bool> CheckDatabaseVersionAsync(string databaseName) | ||||||
|  |         { | ||||||
|  |             var path = GetNewFilePath(databaseName, "ver"); | ||||||
|  |             if (!File.Exists(path)) | ||||||
|  |             { | ||||||
|  |                 return true; | ||||||
|             } |             } | ||||||
|  |             int newVersion = 0; | ||||||
|  |             int oldVersion = -1; | ||||||
|  |             using (var newStream = GetOldFileStream(databaseName, "ver")) | ||||||
|  |             { | ||||||
|  |                 using (var sr = new StreamReader(newStream)) | ||||||
|  |                 { | ||||||
|  |                     var str = await sr.ReadToEndAsync(); | ||||||
|  |                     int.TryParse(str, out newVersion); | ||||||
|  |                 } | ||||||
|  |             } | ||||||
|  |             using (var oldStream = new FileStream(path, FileMode.Open)) | ||||||
|  |             { | ||||||
|  |                 using (var sr = new StreamReader(oldStream)) | ||||||
|  |                 { | ||||||
|  |                     var str = await sr.ReadToEndAsync(); | ||||||
|  |                     int.TryParse(str, out oldVersion); | ||||||
|  |                 } | ||||||
|  |             } | ||||||
|  |             return newVersion > oldVersion; | ||||||
|  |         } | ||||||
|  | 
 | ||||||
|     } |     } | ||||||
| } | } | ||||||
|  | @ -1,6 +1,6 @@ | ||||||
| <?xml version="1.0" encoding="utf-8"?> | <?xml version="1.0" encoding="utf-8"?> | ||||||
| <Package xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10" xmlns:mp="http://schemas.microsoft.com/appx/2014/phone/manifest" xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10" IgnorableNamespaces="uap mp"> | <Package xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10" xmlns:mp="http://schemas.microsoft.com/appx/2014/phone/manifest" xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10" IgnorableNamespaces="uap mp"> | ||||||
|   <Identity Name="7385YanManiez.AidedeJeu" Publisher="CN=2C78A91E-528B-4FF0-A4BE-FD7F7EBABB44" Version="1.29.0.0" /> |   <Identity Name="7385YanManiez.AidedeJeu" Publisher="CN=2C78A91E-528B-4FF0-A4BE-FD7F7EBABB44" Version="1.30.0.0" /> | ||||||
|   <mp:PhoneIdentity PhoneProductId="7b75e00f-ae8d-472e-9d0f-cbfe5e44017c" PhonePublisherId="00000000-0000-0000-0000-000000000000" /> |   <mp:PhoneIdentity PhoneProductId="7b75e00f-ae8d-472e-9d0f-cbfe5e44017c" PhonePublisherId="00000000-0000-0000-0000-000000000000" /> | ||||||
|   <Properties> |   <Properties> | ||||||
|     <DisplayName>Haches & Dés</DisplayName> |     <DisplayName>Haches & Dés</DisplayName> | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Yan Maniez
						Yan Maniez