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

คู่มือนี้จะแสดงวิธีใช้ Player Stats API สำหรับบริการเกมของ Google Play คุณสามารถ ใช้ Player Stats API เพื่อดึงข้อมูลเกี่ยวกับกิจกรรมในเกมของผู้เล่น

Player Stats API ช่วยให้คุณปรับแต่งประสบการณ์การเล่นเกมให้เหมาะกับกลุ่มผู้เล่นที่เฉพาะเจาะจงและวงจรของผู้เล่นในระยะต่างๆ ได้ คุณสามารถสร้างประสบการณ์ที่ปรับแต่งแล้ว สำหรับกลุ่มผู้เล่นแต่ละกลุ่มตามความคืบหน้า การใช้จ่าย และการมีส่วนร่วมของผู้เล่น เช่น คุณสามารถใช้ API นี้ดำเนินการเชิงรุกเพื่อ กระตุ้นให้ผู้เล่นที่ใช้งานน้อยกลับมามีส่วนร่วมกับเกมอีกครั้ง เช่น โดย แสดงและโปรโมตไอเทมใหม่ในเกมเมื่อผู้เล่นตรวจสอบสิทธิ์

คุณจะพบ API ได้ในแพ็กเกจ com.google.android.gms.games.stats และ com.google.android.gms.games

ก่อนเริ่มต้น

ก่อนเริ่มใช้ Player Stats API ให้ทำดังนี้

รับไคลเอ็นต์ Player Stats

หากต้องการเริ่มใช้ Player Stats API เกมของคุณต้องได้รับออบเจ็กต์ PlayerStatsClient ก่อน คุณทำได้โดยการเรียกใช้เมธอด PlayerStatsClient.getPlayersClient() และส่งกิจกรรม

คลาส PlayerStatsClient ใช้คลาส Task ของบริการ Google Play เพื่อแสดงผลแบบอะซิงโครนัส ดูข้อมูลเพิ่มเติมเกี่ยวกับ การใช้ Tasks เพื่อจัดการงานแบบเธรดได้ที่ คู่มือสำหรับนักพัฒนาซอฟต์แวร์ Tasks API

ข้อมูลเบื้องต้นเกี่ยวกับ Player Stats

คุณสามารถใช้ Player Stats API เพื่อดึงข้อมูลเกี่ยวกับกิจกรรมในเกมของผู้เล่น ประเภทข้อมูลผู้เล่นที่คุณดึงข้อมูลได้มีดังนี้

  • ระยะเวลาเซสชันโดยเฉลี่ย: ระยะเวลาเซสชันโดยเฉลี่ยของผู้เล่นเป็น นาที ระยะเวลาเซสชันจะพิจารณาจากเวลาที่ผู้เล่นได้รับการตรวจสอบสิทธิ์โดยบริการเกมของ Google Play

  • จำนวนวันนับตั้งแต่เล่นครั้งล่าสุด: จำนวนวันโดยประมาณนับตั้งแต่ผู้เล่น เล่นครั้งล่าสุด

  • จำนวนการซื้อ: จำนวนการซื้อในแอปโดยประมาณสำหรับ ผู้เล่น

  • จำนวนเซสชัน: จำนวนเซสชันโดยประมาณของผู้เล่น เซสชันจะพิจารณาจากจำนวนครั้งที่ผู้เล่นได้รับการตรวจสอบสิทธิ์โดยบริการเกมของ Google Play

  • เปอร์เซ็นไทล์ของเซสชัน: ค่าประมาณของเปอร์เซ็นไทล์ของเซสชันสำหรับ ผู้เล่น ซึ่งระบุเป็นค่าทศนิยมระหว่าง 0 ถึง 1 ค่านี้จะระบุจำนวนเซสชันที่ผู้เล่นปัจจุบันเล่นเมื่อเทียบกับฐานผู้เล่นที่เหลือของเกมนี้ ตัวเลขที่สูงขึ้นแสดงว่าผู้เล่นรายนี้เล่นเซสชันมากกว่า

  • เปอร์เซ็นไทล์การใช้จ่าย: เปอร์เซ็นไทล์การใช้จ่ายโดยประมาณของผู้เล่น ซึ่งแสดงเป็นค่าทศนิยมระหว่าง 0 ถึง 1 ค่านี้จะระบุว่าผู้เล่นปัจจุบันใช้จ่ายไปเท่าใดเมื่อเทียบกับฐานผู้เล่นที่เหลือของเกมนี้ ตัวเลขที่สูงขึ้นแสดงว่าผู้เล่นรายนี้ใช้จ่ายมากขึ้น

ข้อมูลผู้เล่นประเภทต่อไปนี้เลิกใช้งานแล้วและจะแสดงค่าคงที่ของค่าที่ไม่ได้ตั้งค่าเสมอ

  • ความน่าจะเป็นที่จะเลิกใช้งาน: การคาดการณ์ว่าผู้เล่นจะเลิกใช้งาน ในวันถัดไปหรือไม่ ซึ่งแสดงเป็นค่าทศนิยมระหว่าง 0 (ความน่าจะเป็นที่จะเลิกใช้งานต่ำ) ถึง 1 (ความน่าจะเป็นที่จะเลิกใช้งานสูง) การเลิกใช้งานกำหนดไว้ว่าเป็นการไม่มีการใช้งานเป็นเวลา 7 วัน
  • ความน่าจะเป็นที่จะใช้จ่าย: ความน่าจะเป็นโดยประมาณที่ผู้เล่น จะเลือกใช้จ่ายในเกมนี้ ซึ่งแสดงเป็นค่าทศนิยมระหว่าง 0 (ความน่าจะเป็นที่จะใช้จ่ายต่ำ) ถึง 1 (ความน่าจะเป็นที่จะใช้จ่ายสูง)
  • การใช้จ่ายทั้งหมดใน 28 วันข้างหน้า: การใช้จ่ายทั้งหมดโดยประมาณที่คาดว่าผู้เล่น จะใช้จ่ายในเกมนี้ในช่วง 28 วันข้างหน้า
  • ความน่าจะเป็นที่จะเป็นผู้ใช้จ่ายสูง: ความน่าจะเป็นโดยประมาณที่ผู้เล่นจะใช้จ่ายเป็นจำนวนเงินที่อยู่ในเปอร์เซ็นไทล์ที่ 95 หรือสูงกว่าของฐานผู้เล่นของเกมนี้ในช่วง 28 วันข้างหน้า ซึ่งแสดงเป็นค่าทศนิยม ระหว่าง 0 (ความน่าจะเป็นที่จะเป็นผู้ใช้จ่ายสูงต่ำ) ถึง 1 (ความน่าจะเป็นที่จะเป็นผู้ใช้จ่ายสูงสูง)

ดึงข้อมูล Player Stats

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

  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());
          }
        }
      });
}

เคล็ดลับในการใช้ข้อมูล Player Stats

Play Stats API ช่วยให้คุณระบุผู้เล่นประเภทต่างๆ ตามพฤติกรรมการมีส่วนร่วมและการใช้จ่าย และใช้กลยุทธ์ที่เหมาะสมเพื่อปรับปรุงประสบการณ์การเล่นเกมของผู้เล่น

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

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