Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> iOS

วิหา MAC Address ของ iOS/iPhone โดยโปรแกรม

ตั้งแต่ iOS 7 เป็นต้นมา Apple ห้ามไม่ให้เข้าถึง MAC Address จริงของอุปกรณ์ (คืนค่า 02:00:00:00:00:00 เสมอ) เพื่อความเป็นส่วนตัว แอปเปิลแนะนำให้ใช้ identifierForVendor (UUID) แทน

รหัสตัวอย่าง

override func viewDidLoad() {
    super.viewDidLoad()
    print(UIDevice.current.identifierForVendor)           // Optional(UUID)
    print(UIDevice.current.identifierForVendor?.uuidString) // Optional("UUID string")
}

ผลลัพธ์ตัวอย่าง (Simulator iPhone 7 Plus, iOS 12)

Optional(1E52E5F9-9385-4269-A2CA-A0B9063DCBA5)
Optional("1E52E5F9-9385-4269-A2CA-A0B9063DCBA5")

ค่า identifierForVendor เหมือนกันสำหรับแอปจาก vendor เดียวกันบนอุปกรณ์เดียวกัน แตกต่างกันหาก vendor ต่างกันหรืออุปกรณ์ต่างกัน