สถิติผู้เล่นในเกม Android

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

คู่มือนี้จะแสดงวิธีใช้ API สถิติผู้เล่นในเกมโดยใช้บริการเกมของ Google Play ดู API ได้ในแพ็กเกจ com.google.android.gms.games.stats และ com.google.android.gms.games

ข้อควรทราบก่อนที่จะเริ่มต้น

ก่อนเริ่มใช้ API สําหรับสถิติผู้เล่น ให้ทําดังนี้

กําลังโหลดไคลเอ็นต์สถิติผู้เล่น

หากต้องการเริ่มใช้ API สถิติโปรแกรมเล่น เกมจะต้องได้รับออบเจ็กต์ PlayerStatsClient ก่อน ซึ่งทําได้โดยการเรียกเมธอด Games.getPlayerStatsClient() และส่งผ่านกิจกรรม

ข้อมูลเบื้องต้นเกี่ยวกับสถิติผู้เล่น

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

  • ระยะเวลาเซสชันโดยเฉลี่ย: ระยะเวลาเซสชันโดยเฉลี่ยของโปรแกรมเล่นในหน่วยนาที ระยะเวลาเซสชันจะกําหนดโดยเวลาที่ผู้เล่นลงชื่อเข้าใช้บริการเกมของ Google 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 Records API ช่วยให้คุณระบุผู้เล่นประเภทต่างๆ ได้อย่างง่ายดายตามพฤติกรรมการมีส่วนร่วมและการใช้จ่ายของผู้เล่น ทั้งยังนํากลยุทธ์ที่เหมาะสมมาปรับปรุงประสบการณ์การเล่นเกมของตนได้อีกด้วย

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

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