32 lines
		
	
	
		
			948 B
		
	
	
	
		
			Swift
		
	
	
	
	
	
			
		
		
	
	
			32 lines
		
	
	
		
			948 B
		
	
	
	
		
			Swift
		
	
	
	
	
	
| //
 | |
| //  DataExchange.swift
 | |
| //  Runner
 | |
| //
 | |
| //  Created by LittleSheep on 2025/6/2.
 | |
| //
 | |
| 
 | |
| import Foundation
 | |
| 
 | |
| extension UserDefaults {
 | |
|     func getFlutterValue<T>(forKey key: String) -> T? {
 | |
|         let prefixedKey = "flutter.\(key)"
 | |
|         return self.object(forKey: prefixedKey) as? T
 | |
|     }
 | |
| 
 | |
|     func getFlutterToken(forKey key: String = "dyn_user_tk") -> String? {
 | |
|         let prefixedKey = "flutter.\(key)"
 | |
|         guard let jsonString = self.string(forKey: prefixedKey),
 | |
|               let data = jsonString.data(using: .utf8),
 | |
|               let jsonObject = try? JSONSerialization.jsonObject(with: data),
 | |
|               let jsonDict = jsonObject as? [String: Any],
 | |
|               let token = jsonDict["token"] as? String else {
 | |
|             return nil
 | |
|         }
 | |
|         return token
 | |
|     }
 | |
|     
 | |
|     func getServerUrl(forKey key: String = "app_server_url") -> String {
 | |
|         return self.getFlutterValue(forKey: key) ?? "https://api.solian.app"
 | |
|     }
 | |
| }
 |