Nasze strony: gmclan.org gameonly.pl ps-plus.pl gameswithgold.pl n-switch.pl hmt.pl
Fastbar
Powrót do strony głównej
Trzymaj pliki na gmclan.org!
Game Maker w pytaniach i odpowiedziach!
Polska dokumentacja
Tabela wyników ligi 24
Pobierz GM
Akademia GMCLANu
Kategorie bazy artykułów
Artykuły -> Game Maker -> Kursy dla początkujących
Treść artykułu
"Nieznany problem z usługami Google Play" dla GM:S 1.4
autor: Threef (4.03.16) | czas czytania: 4 minuty, 14 sekund
Prawie wszystkie zewnętrzne API w GameMaker: Studio 1.4 zostały przeniesione do zewnętrznych rozszerzeń (extensions). Ma tu duże plusy, a największym jakim się chwali YoYoGames jest to że wcześniej zmiany w zewnętrznym API wymagały zmian w samym GM:S a to skutkowało nowym update. Teraz YoYoGames może wypuścić sam update dla rozszerzenia bez zmuszania nas do pobierania najnowszej wersji całego programu.

W ten sposób zmieniły się między innymi API Padów MOGA, Facebooka, Analityki, no i Play Services o których jest ten drobny artykuł. Gdy będziemy próbowali aktywować w Global Game Settings któreś z zewnętrznych API zostaniemy przeniesieni do Marketplace gdzie będziemy mogli pobrać i dodać do naszego projektu odpowiednie rozszerzenie.

Skoro jesteśmy przy pobieraniu wspomnę ze gdy ktoś po zaktualizowaniu do wersji 1.4 ma problem ze skompilowaniem apk to musi pobrać Android Support Library i Android Support Repository. Oba poprzez Android SDK Manager z zakładki Tools.

Ale przejdźmy już do Google Play Games Services czyli usług udostępniających nam łatwe osiągnięcia albo tabele wyników dla Androida. Nie jest to instrukcja jak zaimplementować te usługi do waszych gier. Wszystko jest dobrze wytłumaczone na tech blogu YoYoGames, a w GameMakerze macie dołączone demo pokazujące jak skonfigurować usługi. Ja tutaj krótko skupię się na problemie jaki męczył mnie od ponad 4 miesięcy czyli: cytat:Nieznany problem z usługami Google Play.Błąd który nie ma najmniejszego sensu. Nie blokuje gry. Nie daje komunikatu gdzie jest błąd. Wyniki w Google nigdzie nie prowadzą. Błąd który pojawia się po zalogowaniu i powoduje jedynie to że Play Services nie działa w grze.
Spędziłem sporo czasu sprawdzając wcześniejsze wersje GameMakera lub pobierając różne SDK. Dopiero przedwczoraj puściły mi nerwy i zacząłem szukać po forum GameMaker Community najróżniejszych tematów o problemach z Androidem i w końcu znalazłem rozwiązanie. Okazuje się że to wina YoYoGames, a błąd jest banalny i prawdopodobnie zostanie poprawiony za jakiś czas. Miejmy nadzieję że ten artykuł nie będzie potrzebny zbyt wielu osobom.

Błąd występuje w GooglePlayServicesExtension v2.2.1 i dotyczy Google Cloud Saving. Zupełnie innej usługi która jak się domyślacie służy do zapisywania stanów gry w chmurze. Szkoda tylko że nie jest to udokumentowana funkcjonalność i trzeba będzie się dokopywać do niej samemu. Dokumentacja dalej twierdzi że dostępne są tylko usługi chmury Amazon WhisperSync.
Tak więc nasz błąd jest wywoływany przez Google Play Games które poprzez Google Play Services stara się wywołać nie skonfigurowany Google Cloud Saving. Chodzi o to że nasza gra pyta o Cloud Saving, ale my nie umożliwiliśmy go aplikacji poprzez konsolę developerską. Jaki byłby sens zaznaczać ten ptaszek skoro nie zamierzamy korzystać z zapisów w chmurze? Stąd właśnie jest problem że pomimo iż mamy odznaczony podobny ptaszek w Global Game Settings naszego projektu to nasza gra sama pyta o używanie Cloud Saving!

Więc jednym z rozwiązań tego problemu jest po prostu włączenie zapisu do chmury w Google Play Developer Console. Ja nie testowałem tego rozwiązania, a od razu przeszedłem do drugiego które poprawia ten błąd. Aby to zrobić musimy edytować pliki rozszerzenia. Dokładnie ten jeden plik.
cytat:ŚCIEŻKA DO PROJEKTU\extensions\GooglePlayServicesExtension\AndroidSource\Java\GooglePlayServicesExtension.javaPrzechodzimy do linijki 97 gdzie znajdujemy ten kawałek kodu:
kod:if( bCloudEnable )
//{
//These are needed if you are using the cloud saving functionality, if you have them in & do not have save games enabled in your google developer console for your game, you won't be able to log
// in to google play services...
Log.i("yoyo","Adding Google Drive API for cloud saving");
builder.addApi(Drive.API);
builder.addScope(Drive.SCOPE_APPFOLDER);
//}

Jak widać klamry zostały wykomentowane z jakiegoś powodu przez YoYoGames. Przez to warunek nie ma znaczenia i kod wykona się niezależnie od niego. Sam komentarz wewnątrz klamr opisuje wszystko bardzo dobrze. Gdyby kogoś interesowało to warunek sprawdza czy w Global Game Settings został zaznaczony ptaszek od Cloud Saving. Jeżeli warunek nie jest brany pod uwagę to i ptaszek nie ma znaczenia.
Powoduje to że nie ważne czy chcemy czy nie, do naszej gry zostaje dopisane API Google Drive. To skutkuje znowu tym że nasza gra nie może się zalogować do Play Services bo nie zgodziliśmy się aby korzystała z tego API.

Musimy odkomentować klamry i sprawić aby warunek działał. Zapisujemy plik. Czyścimy Cache w projekcie i kompilujemy go ponownie. Teraz wszystko powinno działać. Nasza gra będzie się nareszcie logować do Google Games i wysyłać punkty do tabel wyników, a nasi gracze będą mogli zdobywać osiągnięcia!
głosów: 2 | ocena: 9.99 oceń zasób | dodał: Threef
Komentarze
stron: 1

1


av

Uzjel (17:46, 4.03.2016)

Zamiast tego, wystarczyło zezwolić w konsoli Google API na Drive API lub wyłączyć Cloud Saving w konsoli programisty

av

I am Lord (18:43, 4.03.2016)

A ktoś też miał problem, dzisiaj pisał. Im am vader?

av

Threef (19:08, 4.03.2016)

Uzjel: Właśnie na odwrót. Trzeba włączyć Drive API w konsoli.

av

Uzjel (0:50, 5.03.2016)

Tak napisałem.

av

I am vader (15:29, 7.03.2016)

Tak, ale moj problem byl z kompilacją na androida, no more, no less. To moze byc problem z moją konfiguracją, nie kompilowałem od czasu przenosin na nowy dysk, chociaz GM wykrywa wszystko za poprawnie skonfigurowane.

av

Threef (16:19, 7.03.2016)

@I am vader: Może długość ścieżki? Nie dość że trzeba mieć krótką ścieżkę do SDK Androida to i trzeba podać nową ścieżkę w konfiguracji GM dla jego cache. Bo GM wrzuca pliki do tamtego folderu i stamtąd próbuje kompilować.

av

Uzjel (1:22, 8.03.2016)

Fakt, przeskakiwanie z wersji stabilnych jest bardzo trudne czasami :/

av

gnysek (20:06, 9.03.2016)

I najlepiej nie mieć polskich liter i spacji w żadnej ze ścieżek.

av

I am vader (23:19, 9.03.2016)

@Threef - Ścieżki mam takie same i równie krótkie jak miałem oryginalnie, po prostu na nowym dysku. Powinno działać..

av

gnysek (11:09, 29.03.2016)

Teraz to jeszcze trzeba podać dla jakiej wersji gra ma się kompilować od kiedy mają ten nowy kompiler. Jak podasz inne niż masz pobrane, zapomnij o tym, że się uda.

stron: 1

1



Dodaj komentarz:
Treść:
Menu
Panel użytkownika
Jesteś niezalogowany!

Nie masz konta? Zarejestruj się
Użytkownicy on-line
4 użytkownik(ów) aktywny(ch) przez ostatnie 15 minut:
gości: 1, userów: 3, ukrytych: 0
Konrad-GM, Adriann, szpaq99
Użytkownicy na czacie discord
Nikas (17:58, 13.09.19):
Dave Chappelle - Sticks and Stones. Polecam. Nie pamiętam kiedy się tak uśmiałem.
szpaq99 (16:50, 2.09.19):
To podpalcie niech się wypali ]
I am Lord (19:03, 30.08.19):
No otworzyć i powietrzem przecież
gnysek (14:31, 30.08.19):
Tak to się wdmuchuje kurz do środka, a nie na zewnątrz
Wojo (12:28, 30.08.19):
Sprężone powietrze!
gnysek (21:33, 28.08.19):
Ja bym otworzył i wyczyścił
exp (19:10, 28.08.19):
macie jakiś pomysł jak chłodzić laptop? wentylator ma z boku, więc podkładka niewiele tu da
Wojo (8:26, 27.08.19):
Anty, dziękuję za motywacyjne słowa
gnysek (12:05, 26.08.19):
Polskiej strony Lotto też nie robili w GMS2
gnysek (12:05, 26.08.19):
Patrząc też na podejście YYG to obsługi HTTPS, to na 100% gry kasynowe nie są w GMS2 zrobione
gnysek (12:04, 26.08.19):
Dlaczego wtopą? Robili je zanim kupili YYG. Poza tym, YYG jest tylko spółką-córką, nie rodzi to obowiązku używania ich oprogramowania. To jest tylko inwestycja giełdowa tak szczerze.
nowy_user (8:30, 26.08.19):
Hej, jestem ciekawy, czy wszystkie gry PlayTech (te kasynowe) są zrobione w GMS. Wie ktoś może? Byłoby to niezłą wtopą, gdyby się okazało, że jednak te gry robili w czymś innym :d
ANtY (23:44, 25.08.19):
przemyslcie to jeszcze, w kazdej chwili mozecie odpuscic
Wojo (20:27, 24.08.19):
Ty wygrywie. Wystarczył jeden prosty trik [ZOBACZ JAK]
Chell (15:10, 24.08.19):
mi przeprowadzka dala boosta
Flashek (14:18, 24.08.19):
ateistą
gnysek (14:13, 24.08.19):
Ja jestem tym estetą
Wojo (8:58, 24.08.19):
Ja chciałbym dokonać jeszcze kilka rzeczy, ale coraz mniej mi się chce
ANtY (23:51, 23.08.19):
skad wy bierzecie wole do życia
adam014 (19:01, 23.08.19):
Aż specjalnie się zalogowałem - który esteta wstawił tą do niczego nie pasującą belkę na górze? xD
Threef (12:13, 23.08.19):
To wyglądało jak duplikaty w nazwach zasobów
exp (9:48, 23.08.19):
GMS2, po długich męczarniach udało mi się naprawić większość błędów, ale rozwiązania były dla mnie zupełnie niezrozumiałe i w większości przypadków wciąż nie wiem, gdzie była zależność
gnysek (0:07, 23.08.19):
Jaki GM?
exp (22:47, 21.08.19):
jak to wgl możliwe
exp (22:47, 21.08.19):
w ramach testu dodałem room bez niczego, dałem tylko "room_goto_next()" w creation code i błędy również występują
exp (22:46, 21.08.19):
natrafiłem na przedziwne zjawisko... kiedy dodaję do gry nowy room, losowe fragmenty kodu przestają działać albo działają inaczej
gnysek (0:15, 20.08.19):
O oknach wewnątrz gm, oczywiście
Konrad-GM (22:45, 19.08.19):
A ja mam w laptopie klawisz win po prawej stronie tylko, jest to mega niewygodne imo :/
Ranmus (19:34, 19.08.19):
Nie wiem o czym mowa Gnysek, ale jeśli chodzi o przełączanie okien w windowsie na jednym monitorze, to lepiej raczej win+tab, wypchnąć okienko do nowego pulpitu, a potem ctrl+win+left/right arrow
gnysek (14:00, 14.08.19):
wystarczy korzystać z recent window i ctr+tab
nowy_user (12:08, 14.08.19):
ale za to jak fajnie wygląda poza tym wydaje mi się, że wystarczy dokupić drugi monitor i w GMS2 pracuje się całkiem wygodnie.
exp (23:55, 13.08.19):
ale masakra jest z tym nowym interfejsem. nawyki budowane przez kilkanaście lat poszły do piachu
exp (23:53, 13.08.19):
nie trolluj dowcipnisiu
Chell (21:10, 13.08.19):
jak podasz "nowicjusz" to masz poblokowane różne lengthdiry itd
gnysek (20:15, 13.08.19):
To w celach poznawczych. Żeby potem wiedzieć dla kogo bardziej rozwijać.
exp (16:56, 13.08.19):
swoją drogą, przy rejestracji musiałem określić swój poziom zaawansowania, on na coś wpływa?
exp (16:56, 13.08.19):
pobrałem dzisiaj GMS2 i masakra, jak się wszystko pozmieniało
gnysek (11:48, 12.08.19):
GML jest do nauki w tydzień, jak znasz inny język i masz doświadczenie. Tylko ten ból, ilu rzeczy brakuje...
nowy_user (0:27, 10.08.19):
Wszystko na to wskazuje, myślę że w YoYo doskonale zdają sobie sprawę, ile $$ mogą na tej zmianie zarobić. Wiele małych firm GameDevowych pewnie rezygnuje z GMa na korzyść Unity, właśnie głównie dlatego, że nie znają GMLa i nie chcą marnować czasu na uczenie się nwego języka. A tu właśnie studia i zawodowcy to otencjalnie największy $
gnysek (15:19, 9.08.19):
Kto wie, może te zmiany w grudniu to pierwszy krok ?
gnysek (14:50, 9.08.19):
Miał być JS, ale ostatecznie wyparował z bety (a tam też chyba tylko był w opcjach, a pisać się nie dało).
nowy_user (11:01, 9.08.19):
Mi się marzy, aby GMS dodało w końcu możliwość pisania w innym języku. Co prawda znam tylko GML, ale zawsze mógłbym się nauczyć nowego języka, natomiast dużo łatwiej byłoby mi znaleźć kompanów do wspólnej pracy nad grą, gdyby można było pisać np. w C# . GML jest językiem bardzo niszowym, i ciężko w realu znaleźć ludzi, którzy go znają.
nowy_user (10:56, 9.08.19):
Nie do końca, bo system kamer się trochę zmienił, ja po imporcie swojego projektu mam małe zamieszanie w kodzie z viewami (tzn. wszystko działa jak trzeba , ale kod jest dla mnie dość obcy)
gnysek (17:28, 8.08.19):
Nieee, tylko interfejs, reszta ta sama Dopiero w grudniu będą zmiany, czwarty news od góry.
Konrad-GM (12:04, 8.08.19):
Siemaneczko, strzałka, piąteczka, GM Studio 2 tak się zmienił, że to już nie ten sam GM co na Delphi.
Pablo-GM (12:02, 8.08.19):
siemacie Panowie, kilka lat minęło, a w człowieku odezwał się zew stworzenia gierki. Zastanawiam się tylko jak mocno zmienił się sam game maker?
Flashek (14:26, 7.08.19):
jak ja bylem to było
szpaq99 (9:23, 7.08.19):
Na dolnym też nie było tragedii, dokładnie kilka dni tylko kilka razy przygrzało mocniej i tyle,
gnysek (9:41, 6.08.19):
ja całe życie nad morzem mieszkam i nie stwierdzam upałów w tym roku... może ze dwa dni.
szpaq99 (7:38, 6.08.19):
Sobie wiatraczki odpalcie
Ankieta
» Ile powinny trwać tury Ligi 24?
24h
48h
54h (piątek od 18:00)
7 dni
inna długość (podałem w komentarzu ankiety)

GMCLAN to serwis o programie Game Maker i nie tylko.
[ Polityka prywatności ]
Copyright © 2002-2019. GMCLAN.ORG
Wszelkie prawa zastrzeżone. Kopiowanie materiałów bez zgody redakcji zabronione!
© 2002-2017 Ranmus (ranmus.pl), © 2017-2019 {=|=} fable_inside();

[ Czas generowania strony: 0.02704 sekund ] [ Liczba zapytań MySQL: 13 ]