Tài liệu tích hợp Insider MJ:
Brand hiện tại main: develop_insider
Helper: helper_insider. (có thể dùng update submodule)
Account_profile: main_kien
Link: https://academy.useinsider.com/docs/ios-integration
Các case userObject cần chú ý:
Device trắng khi chưa được login bất kì tài khoản nào, sẽ được định danh bởi deviceID (do Insider tự cấp), tại thời điểm viết tài liệu thì id này là cố định ko thay đổi dù cho xóa app:
userObject này sẽ được merge vào tài khoản lần đầu tiên được đăng kí mới (tài khoản này phải chưa có data ở trên database của Insider)-(1)
Khi một tài khoản đã tồn tại login vào divice thì 2 tài khoản này độc lập và không liên quan tới nhau.
Case tồn tại: khi tài khoản chứa deviceID được mege với 1 tài khoản (ở case 1), khi app data bị xóa (hoặc xóa app tải lại) thì deviceId gắn với device không đổi nên khi chưa được login với bất kì tài khoản nào thì event sẽ được push lên userId có ID là deviceId, nhưng id này đã được merge với tài khoản ở case 1-> push nhầm data, (đang cần Insider sử lí) .
Trong 1 session hoạt động của App, SDK của Insider sẽ push Data (attribute, event) lên server của Insider khi app được kill hoặc app vào background Mode (để tối ưu hóa Performance của App):
Trong case này không cần quan tâm tới độ trễ của campaign (SDK sẽ xử lý để không bị trễ)
Case phát sinh: khi có nhiều Insider User login out vào trong 1 session của app (switch profile) thì chỉ có Insider User (Monkey profile) cuối cùng được push data lên, mất data của các user (profile) trước đó ->Insider đang xem xét để fix case này.
Hiện tại, Insider đang setting các identity có độ ưu tiên lần lượt là mail, phone number, userId, data chỉ được push đúng khi có chung bộ identity. Vd: user 1 có: mail: Thang.nguyen@monkey.edu.vn và có Phone number là 0987654321 và có user id là 1234. Nhưng khi call login với bộ Identity là: Thang.nguyen@monkey.edu.vn và id là 1234 thì Insider sẽ tạo ra 1 user mới, và 2 user này sẽ không liên quan tới nhau. Hiện tại, đang xử lý bằng cách chỉ push userId lên để test. Có thể yêu cầu bên Insider ko xét Mail và Phone là Identity của user. Ví dụ bên dưới là 2 user có cùng uuid nhưng khác Phone Number.
Insider hiện tại đang giới hạn số lượng custom attribute và properties của tất cả các Event là 80 (có thể đã được tăng sau các lần đàm phán). Nên lưu ý số lượng này để không bị vượt quá.
Hiện tại, Event được lưu trong vòng 3 tháng (có thể đã tăng sau những lần đàm phán)
Một số vấn đề khi tích hợp:
Android:
1, Version của 'com.huawei.hms:push' cần được nâng lên cao hơn 5.0.4.32 (trong docs) để tránh lỗi khi build.
2, Tên của partner_name cần được thay ở cả manifest và appActivity.
3, App của Monkey không cần sử dụng đến các quyền về Location nên khi tích hợp sdk nên bỏ các sdk và các quyền liên quan tới Location để tránh bị reject app khi submit.
IOS:
1, Đôi khi inherit! :search_paths trong Podfile không hoạt động (giúp trình biên dịch tìm các module của Insider) -> hỏi thêm Kiên Lê :))
2, Khi build release do case 1 không hoạt động nên trong trường hợp này cần thêm vào Search Paths: $(PROJECT_DIR)/Pods và đặt thuộc tính là recursive.