Эх сурвалжийг харах

Improved directory, cache, remove account

marinofaggiana 5 жил өмнө
parent
commit
e6e020c912

+ 1 - 1
iOSClient/Brand/File_Provider_Extension.plist

@@ -19,7 +19,7 @@
 	<key>CFBundleShortVersionString</key>
 	<string>2.23.8</string>
 	<key>CFBundleVersion</key>
-	<string>10</string>
+	<string>11</string>
 	<key>NSAppTransportSecurity</key>
 	<dict>
 		<key>NSAllowsArbitraryLoads</key>

+ 1 - 1
iOSClient/Brand/Share.plist

@@ -19,7 +19,7 @@
 	<key>CFBundleShortVersionString</key>
 	<string>2.23.8</string>
 	<key>CFBundleVersion</key>
-	<string>10</string>
+	<string>11</string>
 	<key>NSAppTransportSecurity</key>
 	<dict>
 		<key>NSAllowsArbitraryLoads</key>

+ 1 - 1
iOSClient/Brand/iOSClient.plist

@@ -63,7 +63,7 @@
 		</dict>
 	</array>
 	<key>CFBundleVersion</key>
-	<string>10</string>
+	<string>11</string>
 	<key>FIREBASE_ANALYTICS_COLLECTION_DEACTIVATED</key>
 	<true/>
 	<key>Fabric</key>

+ 4 - 3
iOSClient/Login/CCLogin.m

@@ -369,13 +369,14 @@
                     
                 } else {
                     
-                    // STOP Intro
-                    [CCUtility setIntro:YES];
-                    
                     // NO account found, clear
                     if ([NCManageDatabase.sharedInstance getAccounts] == nil) {
+                        [NCUtility.sharedInstance removeAllSettings];
                     }
                     
+                    // STOP Intro
+                    [CCUtility setIntro:YES];
+                    
                     [[NCManageDatabase sharedInstance] deleteAccount:account];
                     [[NCManageDatabase sharedInstance] addAccount:account url:url user:user password:password loginFlow:false];
                     

+ 5 - 3
iOSClient/Login/CCLoginWeb.swift

@@ -120,13 +120,15 @@ extension CCLoginWeb: SwiftModalWebVCDelegate {
                     
                     if (loginType == k_login_Add || loginType == k_login_Add_Forced) {
                         
-                        // STOP Intro
-                        CCUtility.setIntro(true)
-                        
+    
                         // NO account found, clear
                         if NCManageDatabase.sharedInstance.getAccounts() == nil {
+                            NCUtility.sharedInstance.removeAllSettings()
                         }
                         
+                        // STOP Intro
+                        CCUtility.setIntro(true)
+                        
                         // Add new account
                         NCManageDatabase.sharedInstance.deleteAccount(account)
                         NCManageDatabase.sharedInstance.addAccount(account, url: serverUrl, user: username, password: password, loginFlow: true)

+ 21 - 0
iOSClient/Utility/NCUtility.swift

@@ -374,5 +374,26 @@ class NCUtility: NSObject {
         
         return false
     }
+    
+    @objc func removeAllSettings() {
+        
+        CCNetworking.shared()?.invalidateAndCancelAllSession()
+        URLCache.shared.memoryCapacity = 0
+        URLCache.shared.diskCapacity = 0
+        KTVHTTPCache.cacheDeleteAllCaches()
+        
+        NCManageDatabase.sharedInstance.clearDatabase(account: nil, removeUser: true)
+        
+        CCUtility.emptyGroupDirectoryProviderStorage()
+        CCUtility.emptyGroupLibraryDirectory()
+        CCUtility.emptyGroupCaches()
+        CCUtility.emptyDocumentsDirectory()
+        CCUtility.emptyTemporaryDirectory()
+        CCUtility.emptyLibraryDirectory()
+        
+        CCUtility.createDirectoryStandard()
+        
+        CCUtility.deleteAllChainStore()
+    }
 }