Avatar ·

Comment déterminer le modèle actuel d'iPhone ou d'appareil iOS en Swift ?

Bonjour à tous ! Je suis un développeur iOS débutant et j'ai rencontré un problème : je dois déterminer programmatiquement sur quel appareil exact l'application est lancée. Par exemple, je veux afficher différents éléments d'interface pour iPhone SE, iPhone 12 Pro Max et iPad, ou logger le modèle du téléphone pour l'analytique. J'ai essayé d'utiliser `UIDevice.current.model`, mais il ne retourne que des chaînes génériques comme "iPhone", "iPad" ou "iPod touch". Moi, j'ai besoin de connaître le modèle spécifique : "iPhone 12", "iPhone 14 Pro Max", "iPad Pro 12.9-inch (5th generation)" et ainsi de suite. J'ai aussi essayé d'utiliser `utsname`, mais le code obtenu (par exemple, "iPhone13,2") ne peut pas être converti en un nom lisible sans un énorme dictionnaire. J'ai trouvé plein de solutions en Objective-C sur Internet, mais j'ai besoin de quelque chose en Swift, de préférence à jour pour iOS 16+. Voici ce que j'ai essayé, mais cela ne donne pas le niveau de détail souhaité : ```swift import UIKit let device = UIDevice.current print("Model: \(device.model)") // "iPhone" print("Localized Model: \(device.localizedModel)") // "iPhone" ```