Android SDK API
คำอธิบายอินเทอร์เฟซ SDK
- MTMAApi มีอินเทอร์เฟซทั้งหมดของฟังก์ชัน MA
ข้อควรทราบก่อนเรียกใช้
startสามารถเรียกได้เฉพาะในกระบวนการหลักของแอปพลิเคชันโฮสต์เท่านั้น- ยกเว้นอินเทอร์เฟซการกำหนดค่าที่ได้รับอนุญาตให้ตั้งค่าก่อนการเริ่มต้น API ธุรกิจ MA อื่นๆ จะสามารถเรียกได้หลังจากการเริ่มต้นสำเร็จแล้วเท่านั้น
- ขอแนะนำให้เรียกใช้ API ภายนอก MA ทั้งหมดในกระบวนการหลัก กระบวนการที่ไม่ใช่กระบวนการหลักจะไม่แชร์สถานะการเริ่มต้นของกระบวนการหลัก และการเรียกจะไม่ถูกส่งต่อไปยังกระบวนการหลัก
- เมื่อกระบวนการที่ไม่ใช่หลักเรียกใช้ API ธุรกิจ อินเทอร์เฟซที่มีการเรียกกลับจะส่งกลับ
CODE_START_FAIL (-2),getEuid()และgetMaRid()จะส่งคืนค่า null และอินเทอร์เฟซทางธุรกิจที่ไม่มีการเรียกกลับจะไม่ถูกดำเนินการ configDebugMode,setCollectControl,setReportInterval,setMaxEventCacheCountและsetNoActiveSessionEndDurationTimeเป็นการกำหนดค่าในกระบวนการ การเรียกพวกเขาในกระบวนการที่ไม่ใช่กระบวนการหลักจะไม่แก้ไขการกำหนดค่าของกระบวนการหลัก MA
รับเวอร์ชัน SDK
เวอร์ชันที่รองรับ
เวอร์ชันเริ่มต้นที่รองรับ: 5.5.0
คำจำกัดความของสนาม
MTMAApi.SDK_VERSION_CODE: หมายเลขเวอร์ชันดิจิทัล MA SDKMTMAApi.SDK_VERSION_NAME: หมายเลขเวอร์ชันสตริง MA SDK
int versionCode = MTMAApi.SDK_VERSION_CODE;
String versionName = MTMAApi.SDK_VERSION_NAME;
ตั้งค่าโหมดการแก้ไขข้อบกพร่อง
เวอร์ชันที่รองรับ
เวอร์ชันเริ่มต้นที่รองรับ: 5.5.0
คำจำกัดความของอินเทอร์เฟซ
- configDebugMode(boolean enable)
- เปิดหรือปิดใช้งานบันทึกการแก้ไขข้อบกพร่อง MA SDK
- ขอแนะนำให้ตั้งค่าก่อนโทร
startและแนะนำให้ปิดในเวอร์ชันวางจำหน่าย
MTMAApi.configDebugMode(true);
เปิดใช้งานฟังก์ชัน MA
เวอร์ชันที่รองรับ
เวอร์ชันเริ่มต้นที่รองรับ: 5.5.0
คำจำกัดความของอินเทอร์เฟซ
- start(MTMAConfig config, MTMAInitResultCallback callback)
- คำอธิบายอินเทอร์เฟซ: ใช้ MA AppKey เพื่อเริ่มต้น MA SDK เวอร์ชันอิสระ
config: การกำหนดค่าเริ่มต้นMTMAConfig(String appKey): ตั้งค่า MA AppKeyMTMAConfig(String appKey, UserIdentity userIdentity): ตั้งค่า MA AppKey และ ID ผู้ใช้พร้อมกัน
callback: การเรียกกลับผลลัพธ์การเริ่มต้นMTMAInitResult:isSuccess(): การกำหนดค่าเริ่มต้นสำเร็จหรือไม่getCode(): รหัสผลลัพธ์0บ่งชี้ถึงความสำเร็จgetMessage(): คำอธิบายผลลัพธ์getEuid(): EUID ได้รับหลังจากการกำหนดค่าเริ่มต้นสำเร็จgetMaRid(): MA RID ได้รับหลังจากการกำหนดค่าเริ่มต้นสำเร็จ
ตัวอย่างการเรียกใช้
MTMAConfig config = new MTMAConfig("your MA AppKey");
MTMAApi.getInstance(this).start(config, new MTMAInitResultCallback() {
@Override
public void onResult(MTMAInitResult result) {
if (result.isSuccess()) {
String euid = result.getEuid();
String maRid = result.getMaRid();
} else {
int code = result.getCode();
String message = result.getMessage();
}
}
});
สลับ AppKey เมื่อรันไทม์
หลังจากการเรียกกลับการกำหนดค่าเริ่มต้นครั้งล่าสุดเสร็จสิ้นแล้ว start จะสามารถเรียกได้อีกครั้งด้วย MTMAConfig ใหม่ API ธุรกิจ MA อื่นๆ ไม่สามารถใช้งานได้ชั่วคราวในระหว่างการเปลี่ยน ไม่มีการสำรอง AppKey เก่าโดยอัตโนมัติเมื่อการเริ่มต้น AppKey ใหม่ล้มเหลว
อินเทอร์เฟซที่เลิกใช้แล้ว
ตั้งแต่เวอร์ชัน 5.5.0 เป็นต้นไป อินเทอร์เฟซต่อไปนี้เลิกใช้แล้ว:
start(CallBack callBack)start(UserIdentity userIdentity, CallBack callBack)
กรุณาใช้ start(MTMAConfig config, MTMAInitResultCallback callback) แทน
ตั้งค่า ID ผู้ใช้
ขอแนะนำให้ตั้งค่าอินเทอร์เฟซนี้เมื่อผู้ใช้เข้าสู่ระบบและให้ข้อมูลที่เกี่ยวข้องเพื่อรับ EUID ที่ตรงกับผู้ใช้
เวอร์ชันที่รองรับ
เวอร์ชันเริ่มต้นที่รองรับ: 5.0.0
คำจำกัดความของอินเทอร์เฟซ
- _setUserIdentity(UserIdentity userIdentity, CallBack callBack) _
- คำอธิบายอินเทอร์เฟซ: -ตั้งค่าการระบุตัวตนผู้ใช้ เช่น หมายเลขบัตรสมาชิกผู้ใช้
- คำอธิบายพารามิเตอร์:
- userIdentity: การระบุตัวตนการโทร
setUserId(String userId): ไม่สามารถเว้นว่างได้หลังจากลบช่องว่างนำหน้าและต่อท้ายแล้ว สูงสุด 255 อักขระ Unicode ไม่สามารถเป็น0,null,undefined,nan(ละเว้นตัวพิมพ์)setAnonymousId(String anonymousId): ไม่สามารถเว้นว่างได้หลังจากลบช่องว่างนำหน้าและต่อท้ายแล้ว สูงสุด 256 อักขระ UnicodesetEmail(String email): ไม่สามารถเว้นว่างได้ อักขระ Unicode สูงสุด 256 ตัว ต้องมีและสามารถมีได้เพียงหนึ่ง@,@ไม่สามารถเว้นว่างก่อนและหลัง และไม่สามารถมีช่องว่าง บรรทัดใหม่ หรือแท็บ รองรับตั้งแต่ 5.5.0setPhone(String phone): ต้องเป็นไปตามรูปแบบ E.164 โดยขึ้นต้นด้วย+ตัวเลขหลักแรกของรหัสประเทศคือ 1–9 จากนั้นประกอบด้วยตัวเลข 1–14 หลัก รองรับตั้งแต่ 5.5.0
- callBack: การติดต่อกลับของอินเทอร์เฟซ
- userIdentity: การระบุตัวตนการโทร
- คำอธิบายการคืนสินค้า:
onCallBack(int code, String message)- รหัส: รหัสส่งคืน 0 หมายถึงความสำเร็จ -1 หมายถึงความล้มเหลว โปรดดูรายละเอียดคำอธิบายพารามิเตอร์ข้อความ
ตัวอย่างการเรียกใช้
UserIdentity userIdentity = new UserIdentity();
userIdentity.setUserId("your_user_id");
userIdentity.setAnonymousId("your_anonymous_id");
userIdentity.setEmail("user@example.com");
userIdentity.setPhone("+8613800138000");
MTMAApi.getInstance(this).setUserIdentity(userIdentity, new CallBack() {
@Override
public void onCallBack(int code, String message) {
MTCommonLog.e(TAG, "setUserIdentity code:" + code);
MTCommonLog.e(TAG, "setUserIdentity message:" + message);
}
});
เมื่อการตรวจสอบฟิลด์ ID ผู้ใช้ล้มเหลว จะไม่มีการส่งคำขอเครือข่าย และ code = -3 จะถูกส่งกลับผ่านการเรียกกลับ
ตั้งค่าข้อมูลการติดต่อผู้ใช้
เมื่อข้อมูลการติดต่อของผู้ใช้เปลี่ยนแปลง คุณสามารถใช้อินเทอร์เฟซนี้เพื่ออัปเดต "ข้อมูลการติดต่อ" ของผู้ใช้ได้
เวอร์ชันที่รองรับ
เวอร์ชันเริ่มต้นที่รองรับ: 5.0.0
คำจำกัดความของอินเทอร์เฟซ
- setUserContact(JSONObject contacts, CallBack callBack)
- คำอธิบายอินเทอร์เฟซ:
- ตั้งค่า "ข้อมูลการติดต่อ" ของผู้ใช้
- คำอธิบายพารามิเตอร์:
- ผู้ติดต่อ: ตั้งค่าวิธีการติดต่อหลายวิธี คีย์คือชื่อของวิธีการติดต่อ และค่าคือค่าของวิธีการติดต่อ ปัจจุบันรองรับวิธีการติดต่อสี่วิธี: อีเมล mobile_phone โทรศัพท์บ้าน และ whatsapp_phone
- callBack: การติดต่อกลับของอินเทอร์เฟซ
- คำอธิบายการคืนสินค้า:
onCallBack(int code, String message)- รหัส: รหัสส่งคืน 0 หมายถึงความสำเร็จ -1 หมายถึงความล้มเหลว โปรดดูรายละเอียดคำอธิบายพารามิเตอร์ข้อความ
- ข้อความ: คำอธิบายเหตุผล
- คำอธิบายอินเทอร์เฟซ:
ตัวอย่างการเรียกใช้
JSONObject contacts = new JSONObject();
try {
contacts.put("key1", "cc");
contacts.put("key2", "dd");
} catch (JSONException e) {
e.printStackTrace();
}
MTMAApi.getInstance(this).setUserContact(contacts, new CallBack() {
@Override
public void onCallBack(int code, String message) {
Log.e(TAG, "setUserContact code:" + code);
Log.e(TAG, "setUserContact message:" + message);
}
});
รับ EUID
เวอร์ชันที่รองรับ
เวอร์ชันเริ่มต้นที่รองรับ: 5.0.0
คำจำกัดความของอินเทอร์เฟซ
- getEuid()
- คำอธิบายอินเทอร์เฟซ:
- รับ EUID ซึ่งแสดงถึง ID เฉพาะของผู้ใช้ เฉพาะค่าปัจจุบันเท่านั้นที่จะถูกส่งกลับเมื่อการกำหนดค่าเริ่มต้นสำเร็จ และส่งกลับค่า Null ในสถานะอื่น
- คำอธิบายอินเทอร์เฟซ:
ตัวอย่างการเรียกใช้
MTMAApi.getInstance(this).getEuid();
รับ MA RID
เวอร์ชันที่รองรับ
เวอร์ชันเริ่มต้นที่รองรับ: 5.5.0
คำจำกัดความของอินเทอร์เฟซ
- getMaRid()
- รับ MA RID ปัจจุบัน เฉพาะค่าปัจจุบันเท่านั้นที่จะถูกส่งกลับเมื่อการกำหนดค่าเริ่มต้นสำเร็จ และส่งกลับค่า Null ในสถานะอื่น
String maRid = MTMAApi.getInstance(this).getMaRid();
ตั้งค่า ID ผู้ติดต่อของช่อง
เวอร์ชันที่รองรับ
เวอร์ชันเริ่มต้นที่รองรับ: 5.5.0
คำจำกัดความของอินเทอร์เฟซ
- setChannelValue(long channelId, List
values, CallBack callBack) - คำอธิบายอินเทอร์เฟซ: ตั้งค่า ID ผู้ติดต่อของช่อง ช่องทาง AppPush ถูกผูกไว้โดย SDK โดยอัตโนมัติ และไม่จำเป็นต้องเรียกการตั้งค่าอินเทอร์เฟซนี้
- คำอธิบายพารามิเตอร์:
channelId: ID ช่องสัญญาณพุชของบุคคลที่สามที่กำหนดค่าบนคอนโซล MA จะต้องมากกว่า0values: รายการค่าของ ID ผู้ติดต่อของช่อง (เช่น RID หรือ Token) ต้องไม่ว่างเปล่า และองค์ประกอบรายการต้องไม่ว่างเปล่าcallBack: การเรียกกลับผลลัพธ์code == 0บ่งชี้ว่าสำเร็จ
List<String> values = Collections.singletonList("push rid or token");
MTMAApi.getInstance(this).setChannelValue(136L, values, new CallBack() {
@Override
public void onCallBack(int code, String message) {
// code == 0 means success
}
});
กำหนดช่วงเวลาข้อมูลการรายงาน
จะมีผลร่วมกับอินเทอร์เฟซ setMaxEventCacheCount และจะถูกรายงานตราบใดที่ตรงตามเงื่อนไขข้อใดข้อหนึ่ง
เวอร์ชันที่รองรับ
เวอร์ชันเริ่มต้นที่รองรับ: 5.0.0
คำจำกัดความของอินเทอร์เฟซ
- setReportInterval(int interval)
- คำอธิบายอินเทอร์เฟซ:
- กำหนดช่วงเวลาข้อมูลการรายงาน เมื่อไม่ได้เรียกอินเทอร์เฟซนี้ ค่าเริ่มต้นคือ 10 วินาทีในการรายงานข้อมูลเหตุการณ์
- รายงานแคชหน่วยความจำช่วงเวลา ซึ่งจำเป็นต้องเรียกใช้ในแต่ละวงจรชีวิตของแอปพลิเคชันจึงจะมีผล
- คำอธิบายพารามิเตอร์
- ช่วงเวลาการรายงานช่วงเวลา หน่วย s (วินาที)
- คำอธิบายอินเทอร์เฟซ:
ตัวอย่างการเรียกใช้
MTMAApi.getInstance(this).setReportInterval(10);
ตั้งค่าขีดจำกัดสูงสุดของแคชเหตุการณ์
จะมีผลร่วมกับอินเทอร์เฟซ setReportInterval และจะมีการรายงานตราบใดที่ตรงตามเงื่อนไขข้อใดข้อหนึ่ง
เวอร์ชันที่รองรับ
เวอร์ชันเริ่มต้นที่รองรับ: 5.0.0
คำจำกัดความของอินเทอร์เฟซ
- setMaxEventCacheCount(int count)
- คำอธิบายอินเทอร์เฟซ:
- ตั้งค่าขีดจำกัดสูงสุดของแคชเหตุการณ์ ค่าเริ่มต้นคือ 50 และสูงสุดต้องไม่เกิน 500
- เมื่อเกินจำนวนแคช ข้อมูลทั้งหมดจะถูกรายงาน
- คำอธิบายพารามิเตอร์
- count ขีดจำกัดบนของจำนวนรายการแคชเหตุการณ์
- คำอธิบายอินเทอร์เฟซ:
ตัวอย่างการเรียกใช้
MTMAApi.getInstance(this).setMaxEventCacheCount(50);
ตั้งค่าการหมดเวลาเซสชัน
เวอร์ชันที่รองรับ
เวอร์ชันเริ่มต้นที่รองรับ: 5.0.0
คำจำกัดความของอินเทอร์เฟซ
- setNoActiveSessionEndDurationTime(int duration)
- คำอธิบายอินเทอร์เฟซ:
- เมื่อวางแอปไว้ในพื้นหลัง ระบบจะเริ่มคำนวณการหมดเวลาเซสชัน หากเกินเวลาที่ตั้งไว้ (ค่าเริ่มต้นคือ 30 นาที) เซสชันจะสิ้นสุดลง
- คำอธิบายพารามิเตอร์
- ระยะเวลา หมดเวลา ระยะเวลา หน่วย s (วินาที)
- คำอธิบายอินเทอร์เฟซ:
ตัวอย่างการเรียกใช้
MTMAApi.getInstance(this).setNoActiveSessionEndDurationTime(5*60);
ตั้งค่าคุณสมบัติ UTM
เวอร์ชันที่รองรับ
เวอร์ชันเริ่มต้นที่รองรับ: 5.0.0
คำจำกัดความของอินเทอร์เฟซ
- setUtmProperties(UtmProperties utmProperties)
- คำอธิบายอินเทอร์เฟซ:
- ตั้งค่าแอตทริบิวต์ UTM หากนักพัฒนาสามารถระบุโฆษณาที่ผู้ใช้ข้ามเพื่อเข้าถึงแอปได้ ขอแนะนำให้ตั้งค่าข้อมูล UTM เราจะส่งพารามิเตอร์นี้เมื่อรายงานเหตุการณ์
- คำอธิบายพารามิเตอร์:
- วัตถุคุณสมบัติ utmProperties UTM
- แหล่งที่มาของแคมเปญ utm_source
- สื่อแคมเปญ utm_medium
- เงื่อนไขแคมเปญ utm_term
- เนื้อหาแคมเปญ utm_content
- ชื่อแคมเปญ utm_campaign
- คำอธิบายอินเทอร์เฟซ:
ตัวอย่างการเรียกใช้
UtmProperties utmProperties = new UtmProperties();
utmProperties.setUtmSource("your_utm_source");
utmProperties.setUtmCampaign("your_utm_campaign");
utmProperties.setUtmContent("your_utm_content");
utmProperties.setUtmId("your_utm_id" );
utmProperties.setUtmMedium("your_utm_medium");
utmProperties.setUtmTerm("your_utm_term");
MTMAApi.getInstance(this).setUtmProperties(utmProperties);
การควบคุมการเก็บข้อมูล
เวอร์ชันที่รองรับ
เวอร์ชันเริ่มต้นที่รองรับ: 5.0.0
คำจำกัดความของอินเทอร์เฟซ
- setCollectControl(MTMACollectControl control)
- คำอธิบายอินเทอร์เฟซ:
- ตั้งค่าสิทธิ์ในการรวบรวม หากคุณต้องการเปิด/ปิดการรวบรวมข้อมูลบางอย่าง โปรดเรียกอินเทอร์เฟซนี้
- คำอธิบายพารามิเตอร์:
control: การตั้งค่าการอนุญาตการรวบรวม; คุณสมบัติที่ไม่ได้ตั้งค่าไว้อย่างชัดเจนใช้ค่าเริ่มต้นต่อไปนี้setCarrier(boolean enable): ว่าจะรวบรวมข้อมูลผู้ให้บริการหรือไม่ โดยจะเปิดใช้งานตามค่าเริ่มต้นsetMacAddress(boolean enable): ว่าจะรวบรวมที่อยู่ MAC หรือไม่ ปิดใช้งานตามค่าเริ่มต้นsetGAID(boolean enable): ว่าจะรวบรวม GAID หรือไม่ ปิดโดยค่าเริ่มต้นsetOAID(boolean enable): ว่าจะรวบรวม OAID หรือไม่ ปิดโดยค่าเริ่มต้นsetAAID(boolean enable): ว่าจะรวบรวม AAID หรือไม่ ปิดโดยค่าเริ่มต้นsetIMEI(boolean enable): ไม่ว่าจะรวบรวม IMEI, ปิดโดยค่าเริ่มต้น; รองรับเฉพาะ Android 9 และต่ำกว่าเท่านั้น แอปพลิเคชันโฮสต์จำเป็นต้องประกาศและรับสิทธิ์READ_PHONE_STATE
- คำอธิบายอินเทอร์เฟซ:
ตัวอย่างการเรียกใช้
try {
MTMACollectControl mtmaCollectControl = new MTMACollectControl();
mtmaCollectControl.setCarrier(true);
mtmaCollectControl.setMacAddress(true);
mtmaCollectControl.setGAID(true);
mtmaCollectControl.setOAID(true);
mtmaCollectControl.setIMEI(true);
mtmaCollectControl.setAAID(true);
MTMAApi.getInstance(this).setCollectControl(mtmaCollectControl);
} catch (Throwable e) {e.printStackTrace();
}
ตั้งค่าคุณสมบัติผู้ใช้
ตั้งค่าของแอตทริบิวต์ผู้ใช้ หากไม่มีแอตทริบิวต์ผู้ใช้ คุณลักษณะนั้นจะถูกสร้างขึ้นโดยอัตโนมัติในเบื้องหลัง
เขียนทับและอัปเดตแอตทริบิวต์ผู้ใช้
- propertySet(final JSONObject properties, final CallBack callBack)
- คำอธิบายอินเทอร์เฟซ:
- แบทช์เขียนทับและอัปเดตค่าแอตทริบิวต์ผู้ใช้
- บันทึกเฉพาะข้อมูลที่รายงานล่าสุดเท่านั้น ซึ่งครอบคลุมข้อมูลประวัติ เช่น ระดับความเป็นสมาชิกของผู้ใช้
- ค่ารองรับสตริง ตัวเลข ค่าบูลีน อาร์เรย์สตริง
JSONObjectและJSONArrayซึ่งมีองค์ประกอบทั้งหมดเป็นJSONObject
- คำอธิบายพารามิเตอร์:
- คุณสมบัติ: คุณสมบัติผู้ใช้
- callBack: การติดต่อกลับของอินเทอร์เฟซ
- คำอธิบายการคืนสินค้า:
onCallBack(int code, String message)- รหัส: รหัสส่งคืน 0 หมายถึงความสำเร็จ -1 หมายถึงความล้มเหลว ดูรายละเอียดคำอธิบายรหัสข้อผิดพลาด
- ข้อความ: คำอธิบายเหตุผล
- ตัวอย่างการโทร:
- คำอธิบายอินเทอร์เฟซ:
try {JSONObject properties = new JSONObject();
properties.put("your_property_name","your_property_value");
properties.put("your_property_name 2","your_property_value 2");
properties.put("your_property_name 3","your_property_value 3");
MTMAApi.getInstance(this).propertySet(properties, new CallBack() {
@Override
public void onCallBack(int code, String message) {}});
} catch (Throwable e) {e.printStackTrace();
}
- propertySet(String property, Object value, CallBack callBack)
- คำอธิบายอินเทอร์เฟซ:
- การแทนที่เพียงครั้งเดียวจะอัพเดตค่าของแอตทริบิวต์ผู้ใช้
- บันทึกเฉพาะข้อมูลที่รายงานล่าสุดเท่านั้น ซึ่งครอบคลุมข้อมูลประวัติ เช่น ระดับความเป็นสมาชิกของผู้ใช้
- กฎประเภทค่าสอดคล้องกับแบทช์
propertySet
- คำอธิบายพารามิเตอร์:
- คุณสมบัติ: ชื่อคุณสมบัติผู้ใช้
- ค่า: ค่าแอตทริบิวต์ผู้ใช้
- callBack: การติดต่อกลับของอินเทอร์เฟซ
- คำอธิบายการคืนสินค้า:
onCallBack(int code, String message)- รหัส: รหัสส่งคืน 0 หมายถึงความสำเร็จ -1 หมายถึงความล้มเหลว ดูรายละเอียดคำอธิบายรหัสข้อผิดพลาด
- ข้อความ: คำอธิบายเหตุผล
- ตัวอย่างการโทร:
- คำอธิบายอินเทอร์เฟซ:
MTMAApi.getInstance(this).propertySet("your_property_name","your_property_value", new CallBack() {
@Override
public void onCallBack(int code, String message) {}});
อัปเดตคุณสมบัติผู้ใช้แบบสะสม
- propertyIncrease(final Map<String, ? extends Number> properties, CallBack callBack)
- คำอธิบายอินเทอร์เฟซ:
- รวบรวมการตั้งค่ามูลค่าของคุณลักษณะผู้ใช้และทำการร้องขอเป็นชุด
- รวบรวมข้อมูลที่รายงานทั้งหมด เช่น ปริมาณการใช้สะสม
- สามารถเรียกใช้อินเทอร์เฟซนี้ได้สำหรับแอตทริบิวต์ผู้ใช้ประเภทตัวเลขเท่านั้น มิฉะนั้นจะถูกละเว้น หากไม่มีแอตทริบิวต์ผู้ใช้มาก่อน ค่าเริ่มต้นจะถือเป็น 0
- คำอธิบายพารามิเตอร์:
- คุณสมบัติ: คุณสมบัติผู้ใช้
- callBack: การติดต่อกลับของอินเทอร์เฟซ
- คำอธิบายการคืนสินค้า:
onCallBack(int code, String message)- รหัส: รหัสส่งคืน 0 หมายถึงความสำเร็จ -1 หมายถึงความล้มเหลว ดูรายละเอียดคำอธิบายรหัสข้อผิดพลาด
- ข้อความ: คำอธิบายเหตุผล
- ตัวอย่างการโทร:
- คำอธิบายอินเทอร์เฟซ:
Map<String,Number> properties = new HashMap();
properties.put("your_property_name",1);
properties.put("your_property_name 2",2);
properties.put("your_property_name 3",3);
MTMAApi.getInstance(this).propertyIncrease(properties, new CallBack() {
@Override
public void onCallBack(int code, String message) {}});
- propertyIncrease(final String property, final Number value, CallBack callBack)
- คำอธิบายอินเทอร์เฟซ:
- สะสมการตั้งค่าแอตทริบิวต์ผู้ใช้ คำขอเดียว
- รวบรวมข้อมูลที่รายงานทั้งหมด เช่น ปริมาณการใช้สะสม
- สามารถเรียกใช้อินเทอร์เฟซนี้ได้สำหรับแอตทริบิวต์ผู้ใช้ประเภทตัวเลขเท่านั้น มิฉะนั้นจะถูกละเว้น หากไม่มีแอตทริบิวต์ผู้ใช้มาก่อน ค่าเริ่มต้นจะถือเป็น 0
- คำอธิบายพารามิเตอร์:
- คุณสมบัติ: ชื่อคุณสมบัติผู้ใช้
- ค่า: ค่าแอตทริบิวต์ผู้ใช้
- callBack: การติดต่อกลับของอินเทอร์เฟซ
- คำอธิบายการคืนสินค้า:
onCallBack(int code, String message)- รหัส: รหัสส่งคืน 0 หมายถึงความสำเร็จ -1 หมายถึงความล้มเหลว ดูรายละเอียดคำอธิบายรหัสข้อผิดพลาด
- ข้อความ: คำอธิบายเหตุผล
- ตัวอย่างการโทร:
- คำอธิบายอินเทอร์เฟซ:
MTMAApi.getInstance(this).propertyIncrease("your_property_name",1, new CallBack() {
@Override
public void onCallBack(int code, String message) {}});
###ผนวกแอตทริบิวต์ผู้ใช้
- propertyAdd(final String property, final String value, CallBack callBack)
- คำอธิบายอินเทอร์เฟซ:
- ผนวกค่าแอตทริบิวต์ผู้ใช้ คำขอเดียว
- เพิ่มองค์ประกอบในคอลเลกชันอย่างต่อเนื่อง และจัดเก็บองค์ประกอบในฐานข้อมูลเพื่อการขจัดข้อมูลซ้ำซ้อน หากมี ABC อยู่แล้ว ให้เพิ่ม CD และสุดท้ายก็จะกลายเป็น ABCD
- คำอธิบายพารามิเตอร์:
- คุณสมบัติ: ชื่อคุณสมบัติผู้ใช้
- ค่า: ค่าแอตทริบิวต์ผู้ใช้
- callBack: การติดต่อกลับของอินเทอร์เฟซ
- คำอธิบายการคืนสินค้า:
onCallBack(int code, String message)- รหัส: รหัสส่งคืน 0 หมายถึงความสำเร็จ -1 หมายถึงความล้มเหลว ดูรายละเอียดคำอธิบายรหัสข้อผิดพลาด
- ข้อความ: คำอธิบายเหตุผล
- ตัวอย่างการโทร:
- คำอธิบายอินเทอร์เฟซ:
MTMAApi.getInstance(this).propertyAdd("your_property_name","your_property_value", new CallBack() {
@Override
public void onCallBack(int code, String message) {}});
- propertyAdd(final String property, final Set values, CallBack callBack)
- คำอธิบายอินเทอร์เฟซ:
- ผนวกค่าของแอตทริบิวต์ผู้ใช้ โดยเพิ่มหลายค่าในคราวเดียว
- เพิ่มองค์ประกอบในคอลเลกชันอย่างต่อเนื่อง และจัดเก็บองค์ประกอบในฐานข้อมูลเพื่อการขจัดข้อมูลซ้ำซ้อน หากมี ABC อยู่แล้ว ให้เพิ่ม CD และสุดท้ายก็จะกลายเป็น ABCD
- คำอธิบายพารามิเตอร์:
- คุณสมบัติ: ชื่อคุณสมบัติผู้ใช้
- ค่า: ค่าแอตทริบิวต์ผู้ใช้
- callBack: การติดต่อกลับของอินเทอร์เฟซ
- คำอธิบายการคืนสินค้า:
onCallBack(int code, String message)- รหัส: รหัสส่งคืน 0 หมายถึงความสำเร็จ -1 หมายถึงความล้มเหลว ดูรายละเอียดคำอธิบายรหัสข้อผิดพลาด
- ข้อความ: คำอธิบายเหตุผล
- ตัวอย่างการโทร:
- คำอธิบายอินเทอร์เฟซ:
Set<String> properties = new HashSet<>();
properties.add("your_property_value");
properties.add("your_property_value 2");
properties.add("your_property_value 3");
MTMAApi.getInstance(this).propertyAdd("your_property_name",properties, new CallBack() {
@Override
public void onCallBack(int code, String message) {}});
จัดการองค์ประกอบ object_array
อินเทอร์เฟซต่อไปนี้ได้รับการสนับสนุนตั้งแต่เวอร์ชัน 5.5.0 และใช้สำหรับแอตทริบิวต์ผู้ใช้ object_array เท่านั้น propertyAdd, propertyRemove ดั้งเดิมยังคงใช้สำหรับอาร์เรย์สตริง และลักษณะการทำงานยังคงไม่เปลี่ยนแปลง
- updateObjectArrayProperty(String property, String identifierKey, Object identifierValue, JSONObject values, CallBack callBack)
- อัปเดตฟิลด์ย่อยขององค์ประกอบวัตถุตามตัวระบุที่ไม่ซ้ำกัน
identifierValueรองรับสตริงหรือจำนวนจำกัดvaluesไม่สามารถแก้ไขฟิลด์การระบุได้- ใช้
JSONObject.NULLในvaluesเพื่อลบฟิลด์ย่อยที่เกี่ยวข้อง
JSONObject values = new JSONObject().put("enabled", false);
MTMAApi.getInstance(this).updateObjectArrayProperty(
"devices", "device_id", "device_1", values, callBack);
- addObjectArrayProperty(String property, JSONObject object, CallBack callBack)
- ผนวกองค์ประกอบวัตถุที่ไม่ใช่ null เข้ากับ
object_array
- ผนวกองค์ประกอบวัตถุที่ไม่ใช่ null เข้ากับ
JSONObject device = new JSONObject()
.put("device_id", "device_2")
.put("year", 2026);
MTMAApi.getInstance(this).addObjectArrayProperty("devices", device, callBack);
- removeObjectArrayProperty(String property, String identifierKey, Object identifierValue, CallBack callBack)
- ลบองค์ประกอบออบเจ็กต์ทั้งหมดตามตัวระบุที่ไม่ซ้ำกัน
MTMAApi.getInstance(this).removeObjectArrayProperty(
"devices", "device_id", "device_2", callBack);
ลบคุณลักษณะของผู้ใช้
- propertyRemove(final String property, String values, final CallBack callBack)
- คำอธิบายอินเทอร์เฟซ:
- ลบการดำเนินการด้านมูลค่าในคุณลักษณะผู้ใช้
- ค่านี้เป็นองค์ประกอบคอลเลกชัน และองค์ประกอบต่างๆ จะถูกจัดเก็บไว้ในฐานข้อมูลสำหรับการประมวลผลการขจัดข้อมูลซ้ำซ้อน หากมี ABCD อยู่แล้ว ให้ลบ D และสุดท้ายคือ ABC
- คำอธิบายพารามิเตอร์:
- คุณสมบัติ: ชื่อคุณสมบัติผู้ใช้
- ค่า: ค่าแอตทริบิวต์ผู้ใช้
- callBack: การติดต่อกลับของอินเทอร์เฟซ
- คำอธิบายการคืนสินค้า:
onCallBack(int code, String message)- รหัส: รหัสส่งคืน 0 หมายถึงความสำเร็จ -1 หมายถึงความล้มเหลว ดูรายละเอียดคำอธิบายรหัสข้อผิดพลาด
- ข้อความ: คำอธิบายเหตุผล
- ตัวอย่างการโทร:
- คำอธิบายอินเทอร์เฟซ:
MTMAApi.getInstance(this).propertyRemove("your_property_name","your_property_value", new CallBack() {
@Override
public void onCallBack(int code, String message) {}});
- propertyRemove(final String property, Set
values, final CallBack callBack) - คำอธิบายอินเทอร์เฟซ:
- ลบค่าของคุณลักษณะผู้ใช้และลบค่าหลายค่าในคราวเดียว
- ค่านี้เป็นองค์ประกอบคอลเลกชัน และองค์ประกอบต่างๆ จะถูกจัดเก็บไว้ในฐานข้อมูลสำหรับการประมวลผลการขจัดข้อมูลซ้ำซ้อน หากมี ABCD อยู่แล้ว ซีดีจะถูกลบ และสุดท้ายก็คือ AB
- คำอธิบายพารามิเตอร์:
- คุณสมบัติ: ชื่อคุณสมบัติผู้ใช้
- ค่า: ค่าแอตทริบิวต์ผู้ใช้
- callBack: การติดต่อกลับของอินเทอร์เฟซ
- คำอธิบายการคืนสินค้า:
onCallBack(int code, String message)- รหัส: รหัสส่งคืน 0 หมายถึงความสำเร็จ -1 หมายถึงความล้มเหลว ดูรายละเอียดคำอธิบายรหัสข้อผิดพลาด
- ข้อความ: คำอธิบายเหตุผล
- ตัวอย่างการโทร:
- คำอธิบายอินเทอร์เฟซ:
Set<String> properties = new HashSet<>();
properties.add("your_property_value");
properties.add("your_property_value 2");
properties.add("your_property_value 3");
MTMAApi.getInstance(this).propertyRemove("your_property_name",properties, new CallBack() {
@Override
public void onCallBack(int code, String message) {}});
ลบคุณสมบัติผู้ใช้
เวอร์ชันที่รองรับ
เวอร์ชันเริ่มต้นที่รองรับ: 5.0.0
คำจำกัดความของอินเทอร์เฟซ
- propertyDelete(final String property, final CallBack callBack)
- คำอธิบายอินเทอร์เฟซ:
- ลบค่าทั้งหมดสำหรับแอตทริบิวต์ผู้ใช้
- คำอธิบายพารามิเตอร์:
- คุณสมบัติ: ชื่อคุณสมบัติผู้ใช้
- callBack: การติดต่อกลับของอินเทอร์เฟซ
- คำอธิบายการคืนสินค้า:
onCallBack(int code, String message)- รหัส: รหัสส่งคืน 0 หมายถึงความสำเร็จ -1 หมายถึงความล้มเหลว ดูรายละเอียดคำอธิบายรหัสข้อผิดพลาด
- ข้อความ: คำอธิบายเหตุผล
- คำอธิบายอินเทอร์เฟซ:
ตัวอย่างการเรียกใช้
MTMAApi.getInstance(this).propertyDelete("your_property_name", new CallBack() {
@Override
public void onCallBack(int code, String message) {}});
การรายงานเหตุการณ์
เวอร์ชันที่รองรับ
เวอร์ชันเริ่มต้นที่รองรับ: 5.0.0
คำจำกัดความของอินเทอร์เฟซ
- onEvent(String eventKey, JSONObject properties)
- คำอธิบายอินเทอร์เฟซ:
- การรายงานเหตุการณ์
- คำอธิบายพารามิเตอร์:
- eventKey: ชื่อเหตุการณ์
- คุณสมบัติ: คุณสมบัติเหตุการณ์ คีย์คือชื่อคุณสมบัติ ค่าคือค่าคุณสมบัติ
- คำอธิบายอินเทอร์เฟซ:
ตัวอย่างการเรียกใช้
JSONObject properties = new JSONObject();
properties.put("key1","v1");
properties.put("key2","v2");
MTMAApi.getInstance(this).onEvent("your_event_name",properties );
รหัสข้อผิดพลาด
| รหัส | ค่า | คำอธิบาย |
|---|---|---|
| CODE_สำเร็จ | 0 | ความสำเร็จ |
| CODE_UNKNOWN | -1 | ข้อผิดพลาดที่ไม่รู้จัก |
| CODE_START_FAIL | -2 | การกำหนดค่าเริ่มต้นไม่เสร็จสมบูรณ์ การกำหนดค่าเริ่มต้นล้มเหลว ถูกเตรียมใช้งานในกระบวนการที่ไม่ใช่หลัก หรือการกำหนดค่า MA ที่การดำเนินการปัจจุบันขึ้นอยู่กับยังไม่พร้อม |
| CODE_VALID | -3 | การตรวจสอบพารามิเตอร์ล้มเหลว |
| รหัส_เปิดใช้งาน | -4 | ปิดโครงการ MA |
| CODE_REGISTRATIONID | -5 | MA RID หายไปหรือผิดกฎหมาย |
| รหัส_สวิตซ์ | -6 | การกำหนดค่าโปรเจ็กต์ MA ถูกสลับ และจำเป็นต้องเรียกอีกครั้ง start |










