สถิติผู้เล่นสำหรับเกม Android

คู่มือนี้จะแสดงวิธีใช้ 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 (ความน่าจะเป็นสูง ที่จะกลายเป็นผู้ใช้จ่ายสูง)

ดึงข้อมูลสถิติผู้เล่น

หากต้องการดึงข้อมูลสถิติของผู้เล่นสำหรับผู้เล่นที่ผ่านการตรวจสอบสิทธิ์ ให้ทำตาม ขั้นตอนต่อไปนี้

  1. เรียกใช้เมธอด PlayerStatsClient.loadPlayerStats()

  2. หากการเรียกสำเร็จ บริการเกมของ 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 ช่วยให้คุณระบุผู้เล่นประเภทต่างๆ ได้ตามพฤติกรรมการมีส่วนร่วมและการใช้จ่ายของผู้เล่น และใช้กลยุทธ์ที่เหมาะสมเพื่อปรับปรุงประสบการณ์การเล่นเกมของผู้เล่น

ตารางต่อไปนี้แสดงตัวอย่างกลุ่มผู้เล่นและกลยุทธ์การมีส่วนร่วมที่แนะนำ

กลุ่มผู้เล่น กลยุทธ์การมีส่วนร่วม
ผู้เล่นที่เล่นบ่อยซึ่งมีจำนวนเซสชันสูงและมีเปอร์เซ็นไทล์การใช้จ่ายที่ดี แต่ไม่ได้เล่นในสัปดาห์ที่ผ่านมาหรือนานกว่านั้น
  • ส่งการแจ้งเตือนเกี่ยวกับส่วนลดหรือโบนัสพิเศษ ที่พร้อมให้ใช้งานเมื่อผู้เล่นกลับมาเล่น
  • แสดงข้อความต้อนรับกลับที่รับทราบถึงความสำเร็จอันน่าประทับใจ และมอบป้ายที่ออกแบบมาเพื่อกระตุ้นให้กลับมาเล่นอีก ครั้ง
ผู้เล่นที่มีส่วนร่วมสูงในเปอร์เซ็นไทล์การใช้จ่ายต่ำ
  • ปรับแต่งโบนัสเพื่อกระตุ้นให้ผู้เล่นเชิญเพื่อน มาติดตั้งและเข้าร่วมเกมของคุณ แนวทางนี้สร้างขึ้นจากความเพลิดเพลินที่ผู้เล่นแสดงให้เห็นในเกมเพื่อดึงดูดผู้เล่นใหม่
ผู้เล่นที่ใช้จ่ายสูงซึ่งแสดงสัญญาณว่ามีประสิทธิภาพสูงสุดแล้วและเริ่ม เล่นน้อยลง
  • ปรับแต่งโบนัสเพื่อกระตุ้นความสนใจ เช่น โดย เสนอเครื่องมือ อาวุธ หรือ ส่วนลดที่มีมูลค่าสูงและมีระยะเวลาสั้นๆ
  • ในครั้งถัดไปที่ผู้เล่นทำการตรวจสอบสิทธิ์ ให้แสดงวิดีโอที่ นำผู้เล่นไปยังฟีเจอร์ชุมชน เช่น การโจมตีแคลน ซึ่ง จะกระตุ้นให้เกิดการมีส่วนร่วมที่บ่อยขึ้นและนานขึ้น
ผู้เล่นที่มีโอกาสใช้จ่ายสูงมากหรือต่ำมาก
  • ไม่มีแนวโน้มที่จะใช้จ่าย: ให้ตัวเลือกในการดูวิดีโอโฆษณา แสดงสินค้าที่มีราคาต่ำกว่าสำหรับการซื้อ
  • มีแนวโน้มที่จะใช้จ่าย: นำผู้เล่นไปยังร้านค้าในเกมตั้งแต่เนิ่นๆ และมอบโปรโมชันพิเศษเพื่อกระตุ้นให้ผู้เล่นซื้อ