UserDefaults & Keychain
UserDefaults, Keychain Services, lưu trữ an toàn, dữ liệu nhạy cảm, các phương pháp hay nhất
1UserDefaults trong iOS là gì?
UserDefaults trong iOS là gì?
Câu trả lời
UserDefaults là một hệ thống lưu trữ đơn giản để duy trì dữ liệu không nhạy cảm như tùy chọn của người dùng. Dữ liệu được lưu trữ ở định dạng plist trên đĩa và dễ dàng truy cập. Tuy nhiên, dữ liệu không được mã hóa, vì vậy thông tin nhạy cảm như mật khẩu hoặc token xác thực không bao giờ nên được lưu trữ ở đó.
2Keychain Services trong iOS là gì?
Keychain Services trong iOS là gì?
Câu trả lời
Keychain Services là một API bảo mật cho phép lưu trữ dữ liệu nhạy cảm một cách được mã hóa và an toàn. Nó sử dụng Secure Enclave trên các thiết bị hiện đại để bảo vệ dữ liệu. Keychain là phương pháp được khuyến nghị để lưu trữ mật khẩu, token, chứng chỉ và các thông tin quan trọng khác đối với bảo mật của ứng dụng.
3Làm thế nào để truy cập instance chuẩn của UserDefaults?
Làm thế nào để truy cập instance chuẩn của UserDefaults?
Câu trả lời
UserDefaults.standard là phương thức chuẩn để truy cập instance được chia sẻ mặc định trên toàn bộ ứng dụng. Instance này tự động lưu dữ liệu vào đĩa. Có thể tạo các instance có tên bằng init(suiteName:) để chia sẻ dữ liệu giữa một ứng dụng và các tiện ích mở rộng của nó thông qua App Groups, nhưng UserDefaults.standard bao quát hầu hết các trường hợp sử dụng đơn giản. Tránh tạo nhiều instance chuẩn vì có thể gây ra sự không nhất quán dữ liệu.
UserDefaults có thể lưu trữ trực tiếp những kiểu dữ liệu nào?
Khi nào thì nên sử dụng UserDefaults thay vì Keychain?
+17 câu hỏi phỏng vấn
Các chủ đề phỏng vấn iOS khác
Kiến thức cơ bản về Swift
Kiến thức cơ bản về ngôn ngữ Swift
Kiến thức cơ bản về UIKit
Vòng đời UIViewController
Vòng đời của ứng dụng
Auto Layout & Constraints
UITableView & UICollectionView
Kiến thức cơ bản về SwiftUI
Quản lý trạng thái SwiftUI
Điều hướng SwiftUI
Networking & URLSession
Codable & Phân tích JSON
Core Data
Lập trình hướng giao thức
Kiến trúc MVVM
Thông báo Push
Unit Testing & XCTest
Kiểm thử giao diện người dùng
Xcode & Hệ thống Build
Swift Package Manager
Memory Management & ARC
Combine Framework
Concurrency & async/await
iOS Design Patterns
Tối ưu hóa hiệu suất
Bảo mật và mã hóa
SwiftUI Advanced
Kiến trúc ứng dụng iOS
Nắm vững iOS cho lần phỏng vấn tiếp theo
Truy cập tất cả câu hỏi, flashcards, bài kiểm tra kỹ thuật, bài tập code review và mô phỏng phỏng vấn.
Bắt đầu miễn phí