---
metadata:
  - name: generator
    content: Diplodoc Platform v5.57.3
alternate:
  - https://yandex.com/dev/games/doc/en/requirements/1/19.md
  - https://yandex.com/dev/games/doc/hi/requirements/1/19.md
  - https://yandex.com/dev/games/doc/ko/requirements/1/19.md
  - https://yandex.com/dev/games/doc/ru/requirements/1/19.md
  - https://yandex.com/dev/games/doc/tr/requirements/1/19.md
  - https://yandex.com/dev/games/doc/vi/requirements/1/19.md
  - https://yandex.com/dev/games/doc/zh/requirements/1/19.md
  - href: vi/requirements/1/19.md
    type: text/markdown
    title: Markdown version
  - href: ../../llms.txt
    type: text/markdown
    title: llms.txt
---
> **Documentation Index:** Fetch the complete configuration index at https://yandex.com/dev/games/doc/vi/llms.txt

# Phương pháp SDK

{% note info "Yêu cầu 1.19" %}

Khởi tạo SDK của Yandex Games và sử dụng các phương thức của nó được thực hiện nghiêm ngặt theo tài liệu và yêu cầu đối với trò chơi:

1. SDK được khởi tạo chính xác như được chỉ định trên trang **Cài đặt và sử dụng SDK**.

2. Tại thời điểm người chơi có thể bắt đầu chơi game, phải gọi phương thức `ready()` từ `gameReadyAPI`.

3. Sử dụng `GameplayAPI` là tùy chọn, tuy nhiên, nếu các phương thức `GameplayAPI` được sử dụng trong trò chơi, thì các thời điểm gửi sự kiện `start()` và `stop()` phải chính xác theo mô tả trong mục **Gameplay**.

4. Việc theo dõi các sự kiện `game_api_pause` và `game_api_resume` là không bắt buộc, tuy nhiên, nếu các phương thức `ysdk.on()` và `ysdk.off()` được sử dụng trong trò chơi, thì logic xử lý sự kiện phải chính xác theo như được mô tả trong phần [Sự kiện tạm dừng và tiếp tục trò chơi](https://yandex.com/dev/games/doc/vi/sdk/sdk-events.md#pause-resume).

{% endnote %}

## Khởi tạo SDK {#sdk-initializing}

**1.19.1.** SDK được khởi tạo chính xác như được chỉ định trên trang [Cài đặt và sử dụng SDK](https://yandex.com/dev/games/doc/vi/sdk/sdk-about.md). Để yêu cầu được coi là đã được thực hiện, phải sử dụng loader cập nhật.

### Kiểm tra tính cập nhật của loader {#loader-check}

1. Khởi chạy trò chơi với bảng điều khiển debug.

   <!-- source: vi/_includes/requirements/start-debug-panel.md -->
   {% list tabs %}

   - Qua bảng điều khiển của nhà phát triển
       1. Mở [bảng điều khiển Yandex Games](https://games.yandex.com/console).
       1. Chọn trò chơi bạn muốn.
       1. Ở góc trên bên trái, nhấn vào **Open with debug panel**.

   - Qua thanh địa chỉ
       1. Mở trò chơi bạn muốn.
       1. Thêm `&debug-mode=16` vào cuối dòng địa chỉ trình duyệt.

   {% endlist %}
   <!-- endsource: vi/_includes/requirements/start-debug-panel.md -->

1. Trên bảng điều khiển debug, bên trái chỉ báo Game Ready, tìm hai chữ cái:

    - `IF` (init false) — trò chơi hỗ trợ loader cũ. Khi rê chuột lên `IF`, sẽ xuất hiện dòng chữ _Is loader: false_.

    - `IT` (init true) — trò chơi hỗ trợ loader mới. Khi rê chuột lên `IT`, sẽ xuất hiện dòng chữ _Is loader: true_.

#### Ví dụ

<div class="table-50">

#|
|| **Loader** | **Bình luận** ||
|| ![](../../_images/requirements/gra/old-1.png) | Loader cũ. Trên bảng điều khiển debug hiển thị `IF`. ||
|| ![](../../_images/requirements/gra/old-2.png) | Loader cũ. Trên bảng điều khiển debug hiển thị `IF`. ||
|| ![](../../_images/requirements/gra/new-1.png) | Loader mới. Trên bảng điều khiển debug hiển thị `IT`. ||
|| ![](../../_images/requirements/gra/new-2.png) | Loader mới. Trên bảng điều khiển debug hiển thị `IT`. ||
|#

</div>

## Game Ready {#gameready}

**1.19.2.** Khi người chơi đã sẵn sàng bắt đầu trò chơi, hãy gọi phương thức `LoadingAPI.ready()` từ [Game Ready](https://yandex.com/dev/games/doc/vi/sdk/sdk-game-events.md#gameready).

Để yêu cầu được coi là đã hoàn thành, phương thức `LoadingAPI.ready()` phải được gọi vào [thời điểm chính xác](#gameready-correct).

### Lôgic kiểm tra Game Ready {#gameready-check}

#### Chuẩn bị {#gameready-preparation}

1. Khởi động trò chơi với bảng điều khiển debug.

   <!-- source: vi/_includes/requirements/start-debug-panel.md -->
   {% list tabs %}

   - Qua bảng điều khiển của nhà phát triển
       1. Mở [bảng điều khiển Yandex Games](https://games.yandex.com/console).
       1. Chọn trò chơi bạn muốn.
       1. Ở góc trên bên trái, nhấn vào **Open with debug panel**.

   - Qua thanh địa chỉ
       1. Mở trò chơi bạn muốn.
       1. Thêm `&debug-mode=16` vào cuối dòng địa chỉ trình duyệt.

   {% endlist %}
   <!-- endsource: vi/_includes/requirements/start-debug-panel.md -->

1. Trên bảng điều khiển debug, tìm kiếm chỉ báo Game Ready ![](../../_images/debug-panel/gra-blue.svg).


#### Nguyên tắc kiểm tra chung {#gameready-check-principle}

1. Kiểm tra xem chỉ báo màu xanh ![](../../_images/debug-panel/gra-blue.svg) chuyển thành màu xanh lục ![](../../_images/debug-panel/gra-green.svg) trong vòng 90 giây.
1. Khởi động lại trò chơi.
1. Kiểm tra lại thời điểm chỉ báo thay đổi màu sắc.

#### Game Ready hoạt động chính xác {#gameready-correct}

Chỉ báo màu xanh ![](../../_images/debug-panel/gra-blue.svg) chuyển thành màu xanh lục ![](../../_images/debug-panel/gra-green.svg) vào thời điểm:

- khi menu có sẵn;

- khi trò chơi có sẵn để tương tác (bao gồm cả hoạt ảnh đầu tiên).


<div class="table-50">

#|
|| **Game Ready** | **Bình luận** ||
|| ![](../../_images/requirements/gra/menu-1.gif) | Chỉ báo màu xanh lục xuất hiện khi menu có sẵn. ||
|| ![](../../_images/requirements/gra/menu-2.gif) | Chỉ báo màu xanh lục xuất hiện khi menu có sẵn. ||
|| ![](../../_images/requirements/gra/menu-3.gif) | Chỉ báo màu xanh lục xuất hiện khi menu có sẵn. ||
|| ![](../../_images/requirements/gra/ok-game-1.gif) | Đèn báo xanh sẽ xuất hiện khi trò chơi sẵn sàng cho tương tác. ||
|| ![](../../_images/requirements/gra/ok-game-2.gif) | Đèn báo xanh sẽ xuất hiện khi trò chơi sẵn sàng cho tương tác. ||
|| ![](../../_images/requirements/gra/ok-game-3.gif) | Đèn báo xanh sẽ xuất hiện khi trò chơi sẵn sàng cho tương tác. ||
|#

</div>

#### Game Ready hoạt động không chính xác {#gameready-incorrect}

Đèn báo màu xanh lá ![](../../_images/debug-panel/gra-blue.svg) đã chuyển sang màu xanh lục ![](../../_images/debug-panel/gra-green.svg):

- trước khi trò chơi trở nên sẵn sàng để tương tác (có thanh tiến trình, biểu tượng loading, màn hình đen, v.v.);

- vài giây sau khi trò chơi sẵn sàng để tương tác.

<div class="table-50">

#|
|| **Game Ready** | **Bình luận** ||
|| ![](../../_images/requirements/gra/before-game-1.gif) | Đèn báo màu xanh xuất hiện trước khi trò chơi sẵn sàng cho tương tác. ||
|| ![](../../_images/requirements/gra/before-game-2.gif) | Đèn báo màu xanh xuất hiện trước khi trò chơi sẵn sàng cho tương tác. ||
|| ![](../../_images/requirements/gra/before-game-3.gif) | Đèn báo màu xanh xuất hiện trước khi trò chơi sẵn sàng cho tương tác. ||
|| ![](../../_images/requirements/gra/after-start-1.gif) | Đèn báo xanh chỉ xuất hiện sau vài giây kể từ khi trò chơi sẵn sàng để tương tác. ||
|| ![](../../_images/requirements/gra/after-start-2.gif) | Đèn báo xanh chỉ xuất hiện sau vài giây kể từ khi trò chơi sẵn sàng để tương tác. ||
|#

</div>

#### Game Ready không được tích hợp {#no-gameready}

Đèn báo chuyển sang màu đỏ ![](../../_images/debug-panel/gra-red.svg) sau 90 giây.

<div class="table-50">

#|
|| **Game Ready** | **Bình luận** ||
|| ![](../../_images/requirements/gra/no-gra-1.gif) | Đèn báo chuyển sang màu đỏ — Game Ready không được tích hợp. ||
|#

</div>

## Đánh dấu gameplay {#gameplay}

**1.19.3.** Các phương thức `GameplayAPI.start()` và `GameplayAPI.stop()` cho phép đánh dấu bắt đầu và dừng quá trình chơi game. Nếu chúng được sử dụng trong game, thì thời điểm gửi sự kiện sẽ chính xác tương ứng với những gì được mô tả trong mục [Gameplay](https://yandex.com/dev/games/doc/vi/sdk/sdk-game-events.md#gameplay).

### Kiểm tra đánh dấu gameplay {#gameplay-check-principle}

#### Chuẩn bị {#gameplay-preparation}

1. Khởi động game với [bảng debug](https://yandex.com/dev/games/doc/vi/console/debug-panel.md).

   <!-- source: vi/_includes/requirements/start-debug-panel.md -->
   {% list tabs %}

   - Qua bảng điều khiển của nhà phát triển
       1. Mở [bảng điều khiển Yandex Games](https://games.yandex.com/console).
       1. Chọn trò chơi bạn muốn.
       1. Ở góc trên bên trái, nhấn vào **Open with debug panel**.

   - Qua thanh địa chỉ
       1. Mở trò chơi bạn muốn.
       1. Thêm `&debug-mode=16` vào cuối dòng địa chỉ trình duyệt.

   {% endlist %}
   <!-- endsource: vi/_includes/requirements/start-debug-panel.md -->

2. Trên bảng debug, tìm nút gamepad 🎮.

#### Nguyên tắc chung trong kiểm tra {#gameplay-general-principle}

Theo dõi trạng thái của chỉ báo gameplay tùy thuộc vào hành động:

   - Khi người chơi bắt đầu quá trình chơi game hoặc tiếp tục sau khi tạm dừng, phương thức `GameplayAPI.start()` phải được gọi. Chỉ báo gameplay phải chuyển sang màu xanh ![](../../_images/debug-panel/gameplay-on.svg) — gameplay đang diễn ra.

   - Khi người chơi kết thúc quá trình chơi game hoặc tạm dừng, phương thức `GameplayAPI.stop()` phải được gọi. Chỉ báo gameplay phải chuyển sang màu đỏ ![](../../_images/debug-panel/gameplay-off.svg) — gameplay đang tạm dừng.

Các kịch bản được xem xét khi kiểm tra:

- Khởi động và kết thúc cấp độ.

- Mở và đóng menu game.

- Mở và đóng menu mua hàng.

- Khởi động và đóng quảng cáo.

- Mất tập trung khỏi game và quay trở lại game (chuyển sang tab khác của trình duyệt hoặc cửa sổ khác).

{% note tip "Lời khuyên" %}

Để biết nơi tập trung (trong game hoặc ở cửa sổ khác), theo dõi [sự kiện](https://yandex.com/dev/games/doc/vi/sdk/sdk-events.md#pause-resume) `game_api_resume` và `game_api_pause`.

{% endnote %}

#### Gameplay được đánh dấu đúng {#gameplay-correct}

Màu của chỉ báo thay đổi tùy thuộc vào tình huống.

<div class="table-50">

#|
|| **Trò chơi** | **Bình luận** ||
|| ![](../../_images/requirements/gameplay/new-lvl-ok.gif) | Khi bắt đầu một cấp độ mới, chỉ báo chuyển sang màu xanh. ||
|| ![](../../_images/requirements/gameplay/lvl-done-ok.gif) | Cấp độ kết thúc, chỉ báo chuyển sang màu đỏ. ||
|| ![](../../_images/requirements/gameplay/menu-close-back-ok.gif) | Khi chuyển sang menu và sau khi quay trở lại quá trình chơi, chỉ báo thay đổi. ||
|| ![](../../_images/requirements/gameplay/menu-open-ok.gif) | Khi chuyển sang menu và sau khi quay trở lại quá trình chơi, chỉ báo thay đổi. ||
|| ![](../../_images/requirements/gameplay/purchases-open-close-ok.gif) | Khi chuyển sang menu mua hàng và sau khi quay trở lại quá trình chơi, chỉ báo thay đổi. ||
|| ![](../../_images/requirements/gameplay/ad-closed-ok.gif) | Quảng cáo đóng lại, màu của chỉ báo đổi từ đỏ sang xanh. ||
|| ![](../../_images/requirements/gameplay/browser-open-ok.gif) | Khi chuyển trọng tâm từ tab trình duyệt sang cửa sổ khác và sau khi quay trở lại quá trình chơi, màu của chỉ báo thay đổi. ||
|#

</div>

#### Gameplay được đánh dấu sai {#gameplay-incorrect}

Màu của chỉ báo không thay đổi tùy thuộc vào tình huống.

<div class="table-50">

#|
|| **Trò chơi** | **Bình luận** ||
|| ![](../../_images/requirements/gameplay/lvl-done-bad.gif) | Cấp độ kết thúc, màu của chỉ báo không đổi từ xanh sang đỏ. ||
|| ![](../../_images/requirements/gameplay/menu-open-bad.gif) | Khi chuyển sang menu, màu của chỉ báo không đổi từ xanh sang đỏ. ||
|| ![](../../_images/requirements/gameplay/ad-closed-bad.gif) | Quảng cáo đóng lại, màu của chỉ báo không đổi từ đỏ sang xanh. ||
|| ![](../../_images/requirements/gameplay/browser-open-bad.gif) | Khi chuyển trọng tâm từ tab trình duyệt sang cửa sổ khác, màu của chỉ báo không thay đổi. ||
|#

</div>

## Liên hệ với ban quản lý {#forma}

Nếu bạn cho rằng mình đã sử dụng các phương pháp SDK đúng cách và trò chơi của bạn bị gỡ bỏ khỏi xuất bản hoặc bị từ chối không đúng lý do — hãy điền vào mẫu dưới đây.

Dịch vụ kiểm soát chất lượng quản lý sẽ kiểm tra lại quyết định và trả lại trò chơi nếu nó đã bị chặn một cách không công bằng.

<div class="cut-button">

{% cut "Mở biểu mẫu" %}

<div style="padding: 15px;
         margin: 10px 0;
         background: #FFFFFF;
         border-radius: 10px;
         border: 1px solid var(--yc-color-line-generic);">
      <iframe height="400"
              width="100%"
              frameborder="0"
              id="moderation-1-19-form"
              src="https://forms.yandex.com/surveys/13487250.5a13659b18018197b1f339b05e2d4dacc05604a6/?answer_choices_52072484=62278442&iframe=1">
      </iframe>
</div>

{% endcut %}

</div>
