Z tego przewodnika dowiesz się, jak używać usługi zdarzeń w aplikacji w C++.
Zanim zaczniesz
W razie potrzeby przejrzyj pomysłach na wydarzenia.
Aby skonfigurować środowisko programistyczne C++ pod kątem usługi zdarzeń, postępuj zgodnie z instrukcjami Wprowadzenie do C++. Możesz pobrać pakiet SDK C++ dla usług gier Play na stronie pobierania pakietów SDK.
Aby gra mogła uzyskiwać dostęp do zdarzeń, musisz je najpierw zdefiniować w Konsoli Google Play.
Przesyłanie wydarzenia
Możesz dodać w grze kod, który będzie powiadamiać usługę Zdarzenia o zdarzeniach
zainteresowanie Twoją grą. Przykłady zdarzeń, które możesz rejestrować
zabijanie wrogów, eksplorowanie czy powracanie do różnych
regionów gier ani zdobywania produktów w grach. Zwykle należy zadzwonić
metody Increment
w menedżerze zdarzeń, by zwiększyć liczbę zdarzeń o 1 za każdym razem, gdy odtwarzacz
wykonuje działanie powiązane ze zdarzeniem
(np. „Zabicie jednego potwora”).
Ten przykład pokazuje, jak przesłać zaktualizowaną liczbę zdarzeń do w usłudze Zdarzenia.
// Increment the event count when player performs the 'Attack blue
// monster' action.
game_services_->Events().Increment(BLUE_MONSTER_EVENT_ID);
Pobieram wydarzenia
Aby pobrać bieżącą wartość licznika zapisaną na serwerach Google dla określonego
wywołaj jedną z metod Fetch*
. Możesz zrobić
ta opcja, jeśli na przykład chcesz wyświetlać statystyki gracza w grze lub
postępów w niestandardowym interfejsie gry.
Poniższy przykład pokazuje, jak pobrać i zapisać dane zdarzenia Twojej gry.
// Log Events details.
LogI("---- Showing Event Counts -----");
gpg::EventManager::FetchAllCallback callback =
[](gpg::EventManager::FetchAllResponse const &response) {
for (auto i : response.data) {
gpg::Event const &event = i.second;
LogI("Event name: %s count: %d", event.Name().c_str(),
event.Count());
}
};
game_services_->Events().FetchAll(callback);