Ứng dụng di động
Cài SDK đồng ý cho ứng dụng iOS
SDK iOS là một Swift Package gồm phần lõi (chỉ cần Foundation) và giao diện SwiftUI. Ứng dụng gọi configure một lần lúc khởi động rồi hiện tờ đồng ý khi cần.
Gói cần dùng: SDK dùng được ở mọi gói; mỗi ứng dụng tính là một website trong giới hạn của gói. Muốn máy chủ của bạn hỏi lại trạng thái đồng ý bằng API công khai thì cần gói Doanh nghiệp hoặc Agency.
SDK chưa phát hành trên CocoaPods, Swift Package Index, Maven hay npm. Liên hệ chúng tôi để nhận mã nguồn; tên gói dưới đây là tên trong mã nguồn.
Các bước
- Trên dashboard, thêm ứng dụng, chọn iOS và chép mã ứng dụng.
- Ở thẻ Banner của ứng dụng, chỉnh câu chữ và dịch vụ rồi xuất bản.
- Thêm Swift Package DuLieuCaNhanConsent vào dự án Xcode.
- Gọi configure với mã ứng dụng và địa chỉ máy chủ lúc ứng dụng khởi động, rồi gắn ConsentSheetHost vào giao diện gốc.
- Chỉ bật SDK phân tích, quảng cáo khi isGranted trả về true cho loại tương ứng.
- Mở nhật ký đồng ý trên dashboard để xem bản ghi đầu tiên với nền tảng iOS.
Mã mẫu
import DuLieuCaNhanConsent
var options = ConsentOptions(endpoint: "https://cdn.dulieucanhan.vn")
options.appVersion = "2.3.1"
await ConsentClient.shared.configure(appKey: "APP_KEY", options: options)
let host = ConsentSheetHost()
ConsentClient.shared.registerUI(host)
// SwiftUI: ContentView().consentSheet(host)
ConsentClient.shared.showConsent()
if ConsentClient.shared.isGranted("analytics") { /* bật SDK phân tích */ }SDK làm gì
- Tờ đồng ý lấy câu chữ, các loại và danh sách dịch vụ từ cấu hình bạn xuất bản trên dashboard, làm mới mỗi giờ. Lần đầu mở ứng dụng khi chưa có mạng, SDK dùng câu mặc định có sẵn và hỏi lại khi có cấu hình thật.
- Mọi loại tuỳ chọn mặc định tắt. "Đồng ý tất cả" và "Từ chối tất cả" có cùng kích thước và cùng màu.
- Lựa chọn lưu trong máy. Mỗi lần khách chọn, SDK gửi một bản ghi về máy chủ: mã đồng ý ngẫu nhiên, lựa chọn từng loại, phiên bản cấu hình, nền tảng, phiên bản SDK, phiên bản ứng dụng và ngôn ngữ. Máy chủ ghi thêm mã băm của địa chỉ IP đã rút gọn; không lưu địa chỉ IP đầy đủ, không lưu mã thiết bị.
- Không có mạng thì bản ghi nằm trong hàng đợi và được gửi lại sau; chỉ khi máy chủ trả mã 204 bản ghi mới được coi là đã gửi.
- Khách được hỏi lại khi bạn xuất bản thay đổi cần hỏi lại (thêm dịch vụ, đổi loại) hay khi lựa chọn cũ quá số ngày hiệu lực.
- Mã ứng dụng và bundle ID không phải lớp bảo vệ: ai giải nén ứng dụng đều đọc được mã ứng dụng và gửi được bản ghi. Máy chủ giới hạn số bản ghi theo địa chỉ IP và theo ứng dụng.
- Phiên bản ứng dụng chỉ gồm chữ, số và các ký tự . _ + -. Ký tự khác được SDK (và máy chủ) đổi thành _, tối đa 32 ký tự, để trống thì ghi là 0.
- SDK JavaScript chạy trong WebView hoặc Expo web gửi kèm Origin nên máy chủ trả 403 BAD_ORIGIN: SDK bỏ bản ghi đó và báo qua onError, không gửi lại. Trên ứng dụng di động hãy dùng SDK iOS, Android hoặc React Native.