Hướng dẫn lập trình mua hàng trong ứng dụng cho thấy bạn có thể tiếp tục mua hàng trong ứng dụng trong NSUserDefaults
here. Tuy nhiên tôi thấy this article nói rằng nó là không an toàn và dữ liệu trong nó có thể dễ dàng truy cập và chỉnh sửa:NSUserDefaults an toàn trên iOS 8,9 như thế nào?
NSUserDefaults được lưu trữ trong plist ở định dạng nhị phân, không có mã hóa, và được lưu trữ trong thư mục của ứng dụng. Điều này có nghĩa là bất kỳ người dùng nào, thậm chí là người dùng "noobiest", có thể tinker với NSUserDefaults của bạn với 5 phút thời gian của họ.
Nếu người dùng thực sự có thể dễ dàng nhận được miễn phí mọi thứ được cung cấp dưới dạng mua hàng trong ứng dụng được sử dụng NSUserDefaults
.
Bài viết vẫn chính xác cho iOS 8,9? Nếu vậy, làm cách nào để bạn tiếp tục mua hàng trong ứng dụng của mình? Tôi thích một số giải pháp đơn giản. Tôi không (cũng không muốn) xác nhận biên lai, vv ..
Giá trị mặc định của người dùng không an toàn. Tuy nhiên, bạn có thực sự lưu dữ liệu nhạy cảm ở đó không? – Sulthan
@Sulthan Đọc câu hỏi. Tôi muốn lưu trữ mua hàng trong ứng dụng ở đó (như Apple khuyến cáo). Tôi tin rằng mua hàng trong ứng dụng là đủ nhạy cảm. – drasto
Có nhiều mô hình cách bạn có thể lưu nội dung trả phí trong cài đặt mặc định của người dùng. Nếu bạn không muốn xác thực, bạn luôn có thể sử dụng keychain. Có nhiều thư viện cho phép sử dụng đơn giản keychain, ví dụ: [Thợ khoá] (https://github.com/matthewpalmer/Locksmith). Và keychain rất an toàn. Nó cũng tồn tại nếu bạn xóa ứng dụng và có thể được chia sẻ trên các thiết bị hoặc ứng dụng. – Sulthan