คู่มือนี้จะแสดงวิธีใช้ API สถิติผู้เล่นสำหรับบริการเกมของ Google Play คุณสามารถ ใช้ Player Stats API เพื่อดึงข้อมูลเกี่ยวกับกิจกรรมในเกมของผู้เล่น
API สถิติผู้เล่นช่วยให้คุณปรับแต่งประสบการณ์การเล่นเกมให้เหมาะกับกลุ่มผู้เล่นที่เฉพาะเจาะจงและวงจรของผู้เล่นในระยะต่างๆ ได้ คุณสามารถสร้างประสบการณ์ที่ปรับแต่งแล้ว สำหรับกลุ่มผู้เล่นแต่ละกลุ่มตามความคืบหน้า การใช้จ่าย และการมีส่วนร่วมของผู้เล่น ตัวอย่างเช่น คุณสามารถใช้ API นี้เพื่อดำเนินการเชิงรุกเพื่อ กระตุ้นให้ผู้เล่นที่ใช้งานน้อยกลับมามีส่วนร่วมกับเกมอีกครั้ง เช่น โดยการ แสดงและโปรโมตไอเทมใหม่ในเกมเมื่อผู้เล่นตรวจสอบสิทธิ์
คุณจะพบ API ได้ในแพ็กเกจ
com.google.android.gms.games.stats
และ com.google.android.gms.games
ก่อนเริ่มต้น
ก่อนที่จะเริ่มใช้ Player Stats API ให้ทำดังนี้
- ดาวน์โหลดและตรวจสอบตัวอย่างโค้ด
- ทำความคุ้นเคยกับคำแนะนำที่อธิบายไว้ในรายการตรวจสอบคุณภาพ
ดาวน์โหลดไคลเอ็นต์สถิติของผู้เล่น
หากต้องการเริ่มใช้ Player Stats API เกมของคุณต้องได้รับออบเจ็กต์
PlayerStatsClient
ก่อน คุณทำได้โดยการเรียกใช้เมธอด
PlayerStatsClient.getPlayersClient()
และส่งกิจกรรม
คลาส
PlayerStatsClient
ใช้คลาสบริการ Google Play
Task
เพื่อแสดงผลแบบไม่พร้อมกัน ดูข้อมูลเพิ่มเติมเกี่ยวกับ
การใช้ Tasks เพื่อจัดการงานแบบเธรดได้ที่
คู่มือสำหรับนักพัฒนาซอฟต์แวร์ Tasks API
ข้อมูลเบื้องต้นเกี่ยวกับสถิติผู้เล่น
คุณสามารถใช้ Player Stats API เพื่อดึงข้อมูลเกี่ยวกับกิจกรรมในเกมของผู้เล่นได้ ประเภทข้อมูลผู้เล่นที่คุณดึงข้อมูลได้มีดังนี้
ระยะเวลาเซสชันเฉลี่ย: ระยะเวลาเซสชันเฉลี่ยของผู้เล่นในหน่วยนาที ระยะเวลาของเซสชันจะขึ้นอยู่กับเวลาที่บริการเกมของ Play ตรวจสอบสิทธิ์ผู้เล่น
จำนวนวันนับตั้งแต่เล่นครั้งล่าสุด: จำนวนวันโดยประมาณนับตั้งแต่ผู้เล่น เล่นครั้งล่าสุด
จำนวนการซื้อ: จำนวนการซื้อในแอปโดยประมาณสำหรับ ผู้เล่น
จำนวนเซสชัน: จำนวนเซสชันของผู้เล่นโดยประมาณ เซสชันจะพิจารณาจากจำนวนครั้งที่ผู้เล่นได้รับการตรวจสอบสิทธิ์โดยบริการเกมของ Google Play
เปอร์เซ็นไทล์ของเซสชัน: ค่าประมาณของเปอร์เซ็นไทล์ของเซสชันสำหรับ ผู้เล่น ซึ่งระบุเป็นค่าทศนิยมระหว่าง 0 ถึง 1 รวม ค่านี้จะระบุจำนวนเซสชันที่ผู้เล่นปัจจุบันเล่นเมื่อเทียบกับฐานผู้เล่นที่เหลือของเกมนี้ ตัวเลขที่สูงขึ้นแสดงว่าผู้เล่นรายนี้เล่นเซสชันมากกว่า
เปอร์เซ็นไทล์การใช้จ่าย: เปอร์เซ็นไทล์การใช้จ่ายโดยประมาณของผู้เล่น ซึ่งแสดงเป็นค่าทศนิยมระหว่าง 0 ถึง 1 โดยรวม ค่านี้จะระบุว่าผู้เล่นปัจจุบันใช้จ่ายไปเท่าใดเมื่อเทียบกับฐานผู้เล่นที่เหลือของเกมนี้ ตัวเลขที่สูงขึ้นแสดงว่าผู้เล่นรายนี้ใช้จ่ายมากขึ้น
ระบบได้เลิกใช้งานข้อมูลผู้เล่นประเภทต่อไปนี้แล้ว และจะส่งคืนค่าคงที่ที่ไม่ได้ตั้งค่า เสมอ
- ความน่าจะเป็นในการเลิกใช้งาน: การคาดการณ์ว่าผู้เล่นจะเลิกใช้งานหรือไม่ ในวันถัดไป โดยแสดงเป็นค่าทศนิยมระหว่าง 0 (ความน่าจะเป็นในการเลิกใช้งานต่ำ) ถึง 1 (ความน่าจะเป็นในการเลิกใช้งานสูง) การเลิกใช้งานหมายถึงการไม่มีการใช้งานเป็นเวลา 7 วัน
- ความน่าจะเป็นในการใช้จ่าย: ความน่าจะเป็นโดยประมาณที่ผู้เล่นจะเลือกใช้จ่ายในเกมนี้ โดยแสดงเป็นค่าทศนิยมระหว่าง 0 (ความน่าจะเป็นในการใช้จ่ายต่ำ) ถึง 1 (ความน่าจะเป็นในการใช้จ่ายสูง)
- การใช้จ่ายทั้งหมดในอีก 28 วันข้างหน้า: การใช้จ่ายทั้งหมดโดยประมาณที่คาดว่าผู้เล่นจะใช้จ่ายในเกมนี้ในช่วง 28 วันข้างหน้า
- ความน่าจะเป็นที่จะเป็นผู้ใช้จ่ายสูง: ความน่าจะเป็นโดยประมาณที่ผู้เล่นจะใช้จ่ายในอีก 28 วันข้างหน้าเป็นจำนวนเงินที่อยู่ในเปอร์เซ็นไทล์ที่ 95 หรือสูงกว่าของฐานผู้เล่นของเกมนี้ ค่านี้แสดงเป็นค่าทศนิยม ระหว่าง 0 (ความน่าจะเป็นต่ำที่จะกลายเป็นผู้ใช้จ่ายสูง) ถึง 1 (ความน่าจะเป็นสูง ที่จะกลายเป็นผู้ใช้จ่ายสูง)
ดึงข้อมูลสถิติผู้เล่น
หากต้องการดึงข้อมูลสถิติของผู้เล่นสำหรับผู้เล่นที่ผ่านการตรวจสอบสิทธิ์ ให้ทำตาม ขั้นตอนต่อไปนี้
เรียกใช้เมธอด
PlayerStatsClient.loadPlayerStats()
หากการเรียกสำเร็จ บริการเกมของ Google Play จะแสดงออบเจ็กต์
Task
ซึ่งจะโหลดออบเจ็กต์PlayerStats
แบบไม่พร้อมกัน ใช้วิธีการของออบเจ็กต์นี้เพื่อดึงข้อมูลเกี่ยวกับกิจกรรมของผู้เล่นที่ได้รับการตรวจสอบสิทธิ์ในแอป
ตัวอย่างเช่น
public void checkPlayerStats() { PlayGames.getPlayerStatsClient(this) .loadPlayerStats(true) .addOnCompleteListener(new OnCompleteListener<AnnotatedData<PlayerStats>>() { @Override public void onComplete(@NonNull Task<AnnotatedData<PlayerStats>> task) { if (task.isSuccessful()) { // Check for cached data. if (task.getResult().isStale()) { Log.d(TAG, "using cached data"); } PlayerStats stats = task.getResult().get(); if (stats != null) { Log.d(TAG, "Player stats loaded"); if (stats.getDaysSinceLastPlayed() > 7) { Log.d(TAG, "It's been longer than a week"); } if (stats.getNumberOfSessions() > 1000) { Log.d(TAG, "Veteran player"); } if (stats.getChurnProbability() == 1) { Log.d(TAG, "Player is at high risk of churn"); } } } else { int status = CommonStatusCodes.DEVELOPER_ERROR; if (task.getException() instanceof ApiException) { status = ((ApiException) task.getException()).getStatusCode(); } Log.d(TAG, "Failed to fetch Stats Data status: " + status + ": " + task.getException()); } } }); }
เคล็ดลับในการใช้ข้อมูลสถิติผู้เล่น
Play Stats API ช่วยให้คุณระบุผู้เล่นประเภทต่างๆ ได้ตามพฤติกรรมการมีส่วนร่วมและการใช้จ่ายของผู้เล่น และใช้กลยุทธ์ที่เหมาะสมเพื่อปรับปรุงประสบการณ์การเล่นเกมของผู้เล่น
ตารางต่อไปนี้แสดงตัวอย่างกลุ่มผู้เล่นและกลยุทธ์การมีส่วนร่วมที่แนะนำ
กลุ่มผู้เล่น | กลยุทธ์การมีส่วนร่วม |
---|---|
ผู้เล่นที่เล่นบ่อยซึ่งมีจำนวนเซสชันสูงและมีเปอร์เซ็นไทล์การใช้จ่ายที่ดี แต่ไม่ได้เล่นในสัปดาห์ที่ผ่านมาหรือนานกว่านั้น |
|
ผู้เล่นที่มีส่วนร่วมสูงในเปอร์เซ็นไทล์การใช้จ่ายต่ำ |
|
ผู้เล่นที่ใช้จ่ายสูงซึ่งแสดงสัญญาณว่ามีประสิทธิภาพสูงสุดแล้วและเริ่ม เล่นน้อยลง |
|
ผู้เล่นที่มีโอกาสใช้จ่ายสูงมากหรือต่ำมาก |
|