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)
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.java

Przechodzimy 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: 4, userów: 0, ukrytych: 0
Użytkownicy na czacie discord
Wojo (10:29, 20.04.18):
Jeśli chodzi o reklamy to odpowiadają mi takie co są na gmclanie teraz niż zamienianie połowy gmclanu na reklamę podpasek czy czegoś podobnego
Wojo (10:27, 20.04.18):
Tylko, że 10% zużycia słabego komputera nie równa się 10% zużyciu dobrego komputera
Wojo (10:27, 20.04.18):
Tylko, że 10% zużycia kom
MaxGaming (1:00, 20.04.18):
Wiesz wirusy też są mimo tego że nie powinny, ale jakoś radzimy sobie z tym
MaxGaming (1:00, 20.04.18):
Mi mniej przeszkadza kopanie bitcoinów w tle niż npnatarczywe reklamy. Wolałbym natomiast aby takie strony mogły się do tego przyznać i nie były linczowane
MaxGaming (0:59, 20.04.18):
przeciwko oszustą byłby fakt braku ograniczeń. Strona musiałaby tylko informować, a czy wkorzysta 90% to jej sprawa. BYleby użytkownik wiedział sam na co się pisze
MaxGaming (0:58, 20.04.18):
Ale o to chodzi z procentami. Dzięki temu nawet jak mamy wolny komputer odczujemy tak samo. Co do innego prawa. Na każdej stronie jakoś jest informacja np. o plikach cookies. Dałoby to sięogarnąć, tym bardziej gdyby powstałą organizacja sprawdzająca takie informacje i byłaby np na jej stronie lista nieuczuciwych stron które należy unikać. Możnaby wprowadzić także w przeglądarkach żeby takie strony nie otwierały się, albo wymagały wyraźnego potwierdzenia użytkownika. Myślę że głównym argumentem
Wojo (23:08, 19.04.18):
tak samo bodajże w szwecji partia piratów chciała założyć własne małe państwo gdzie piractwo byłoby legalne dzięki czemu niektóre strony mogłyby obejść prawo w taki lub inny sposób
Wojo (23:06, 19.04.18):
a żeby mieć jakiś faktyczny zysk z takich koparek bitcoinów to musiałbyś je ustawić na jakiejś popularnej stronie bo np na takim gmclanie zbyt wiele nie wydobędziesz
Wojo (23:05, 19.04.18):
Ale to brzmi abstrakcyjnie Stronę zawsze można założyć w innym państwie gdzie takie prawo nie obowiązuje, 10% mocy obliczeniowej komputera przecież się różni w zależności od tego jak mocny mamy komputer
MaxGaming (21:08, 19.04.18):
Według mnie jeśliby ustanowić prawnie że strona która twierdzi że pobierze np. 10% mocy obliczeniowej naszego komputera na prawdę musi tyle pobierać pod groźbą kary to np kopanie bitcoin w tle jest fajną alternatywą dla reklam
Wojo (10:33, 19.04.18):
Jak dla mnie to sprytne rozwiązanie ktoś wymyślił
I am vader (0:53, 19.04.18):
Nie pamietam jak ten program sie nazywal ale za jaja bym powiesil skurczybyka ktory to zrobil.
I am vader (0:52, 19.04.18):
Odmowilem, nic wielkiego, ale potem przed pobraniem programu kazano mi kopac conajmniej jakastam chwile, tu juz sie podniosly czerwone flagi. Wiec sprawdzilem ten program pod katem wirusow i okazalo sie ze wygenerowane exeki instaluja koparki na kompach uzytkownikow.
I am vader (0:52, 19.04.18):
Znalazlem taki program ktory zamienia pliki bat w exe poniewaz powody, ale na stronie zostalem zapytany czy uzycze komputera na mineowanie kryptowalut podczas przegladania strony zeby wspomoc tworce.
I am Lord (23:59, 18.04.18):
może flash coś dodaje?
Wojo (23:06, 18.04.18):
Nawet pobrałem sobie ADW cleanera i nic nie wykrył
Wojo (22:38, 18.04.18):
No ale co mi po tym, że ktoś ma ip z Gdańska i jest zainteresowany zabawkami dla psów co jest bezużytecznymi danymi nawet dla hakera
Wojo (22:36, 18.04.18):
W sumie jak tak siedzę i się zastanawiam to może wydobyć pliki cookies, przechwycić naciśnięte klawisze
Wojo (22:33, 18.04.18):
Ale co ma śledzić? Lokalizację na podstawie ip? Bo nie rozumiem za bardzo
PsichiX (21:38, 18.04.18):
mowie o skrypcie js-agent.newrelic.com, ktory rozpoznawany jest jako narzedzie sledzace.
PsichiX (21:36, 18.04.18):
prowo?
Wojo (19:40, 18.04.18):
To tak zwane "prowo", które było nieudolną próbą "prowo" yxa
I am Lord (16:59, 18.04.18):
Aż tak ci się zacina to?
Wojo (16:11, 18.04.18):
Pół biedy ze śledzeniem ale denerwuje mnie kopanie BitCoinów przez ten link Nie ma to jak napychać portfel komuś kogo nie znam
I am Lord (0:04, 18.04.18):
Nic o tym nie wiem, a co to za skrypt?
PsichiX (23:56, 17.04.18):
a ten skrypt śledzący to Ty wrzucałeś, czy twórcy scratcha są na tyle ułomni, że coś takiego od siebie dodają? ;>
I am Lord (22:56, 17.04.18):
gnysek (9:35, 12.04.18):
No ja raz miałem nieważną z winy sekretariatu i też chyba musiałem 10zł zapłacić.
Wojo (12:34, 11.04.18):
A wszyscy co chcieli rzucić gimnazjum to po prostu strzelali kible do oporu i ich przenosili do ohp
Wojo (12:08, 11.04.18):
Nie mam jak się zapytać gdyż nie posiadam żadnych znajomych
Gibki Kaktus (10:15, 11.04.18):
To powiedz, że ich popierdoliło xD
MaxGaming (19:39, 10.04.18):
Ustawowa opłata za duplikat to właśnie 9zl. Przeczytajcie jeszcze raz o czym ja mówię :/
Gibki Kaktus (17:11, 10.04.18):
Ja jak zgubiłem to płaciłem 9 czy tam 10 zł xD
MaxGaming (23:07, 9.04.18):
Opłata 9zł to co innego, Nie bardzo, bo kolega z innej szkoły miał podobne doświadczenia...
Chell (22:59, 9.04.18):
albo uisc oplate, jeszcze nie slyszalem o darmowych duplikatach dokumentow
Ignatus (22:20, 9.04.18):
Chyba po prostu Cię nie lubią i robią sobie jaja.Przysłuchaj się przy drzwiach od sekretariatu czy nie kwiczą ze śmiechu zaraz po Twoim wyjsciu
MaxGaming (21:29, 9.04.18):
Szukam na necie i nigdzie nie widzę że jest taki przepis. I wątpie że jeśli jest to muszą to być drogie i nie czytane przez nikogo anonse. Wie ktoś coś?
MaxGaming (21:28, 9.04.18):
Ma ktoś pojęcie na jakiej podstawie szkoła może ode mnie żądać płatnego(i to słono jak za taką usługę) ogłoszenia w anonsach jeśli zgubiłem legitymacje? Twierdzą że nie mogą mi wyrobić nowej bez potwierdzenia zamieszczenia ogłoszenia w anonsach i uiszczenia opłaty...
Wojo (21:11, 9.04.18):
Nie ogarnalem ze jest tylko 48h ,myslalem ze z tydzien ;p
Ignatus (21:04, 7.04.18):
Nie ogarnalem ze jest tylko 24h ,myslalem ze z tydzien ;p
I am vader (19:00, 7.04.18):
Troche pozno zaalarmowales
Ignatus (18:25, 7.04.18):
Nieważne już ,zabrakło kilku głosów,przepadło
Ignatus (16:36, 7.04.18):
Moja żona robi charytatywnie lalki dla chorych i niepełnosprawnych dzieci.Mogę prosić o "wykop" ? www.wykop.pl/li...epelnosprawnych
PsichiX (0:04, 6.04.18):
uuu, antyleniwizm!
I am Lord (23:43, 5.04.18):
Ale kierowniczka widziała że sam ładuję to mu da popalić
I am Lord (23:42, 5.04.18):
zacząłem ładować przed 22 i gość miał mi pomóc a dał nogę
I am Lord (23:41, 5.04.18):
dla każdego
PsichiX (23:35, 5.04.18):
a czy zmiana konczyla sie dla niego o 22:00?
Ankieta
» Jakie kursy najchętniej widziałbyś na stronie ?
GM Studio
GM Studio 2
Godot
Construct

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

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