Jak mogę zintegrować nową usługę Google Cloud Messaging z zapleczem PHP?
php
android
firebase-cloud-messaging
google-cloud-messaging
użytkownik 1488243
źródło
źródło
Odpowiedzi:
Ten kod wyśle wiadomość GCM do wielu identyfikatorów rejestracji za pośrednictwem PHP CURL.
źródło
curl_setopt($ch, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4 );
źródło
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
jest wielkim nie-nie. Jeśli z jakiegoś powodu Twój serwer z tym kodem PHP nie może zweryfikować certyfikatu SSL używanego przez serwery Google, możesz powiedzieć cURL, z czym weryfikować. Przykład: unitstep.net/blog/2009/05/05/…To łatwe do zrobienia. CURL kod to na stronie, która Elad Nava umieścił tu pracuje. Elad skomentował otrzymany błąd .
Ciąg opisujący błąd, który wystąpił podczas przetwarzania wiadomości dla tego odbiorcy. Możliwe wartości są takie same, jak udokumentowano w powyższej tabeli, plus „Niedostępny” (co oznacza, że serwery GCM były zajęte i nie mogły przetworzyć wiadomości dla tego konkretnego odbiorcy, więc można ją ponowić).
Mam już skonfigurowaną usługę, która wydaje się działać (ish) i do tej pory wszystko, co wróciłem, to niedostępne zwroty z Google. Prawdopodobnie zmieni się to wkrótce.
Aby odpowiedzieć na pytanie, użyj PHP, upewnij się, że Zend Framework znajduje się na ścieżce dołączania, i użyj tego kodu:
Mamy to. Działający (wkrótce będzie działał) przykład użycia nowego GCM Googles w Zend Framework PHP.
źródło
Po długim poszukiwaniu w końcu jestem w stanie dowiedzieć się, czego dokładnie potrzebowałem, Łącząc się z GCM za pomocą PHP jako języka skryptowego po stronie serwera, Poniższy samouczek da nam jasne wyobrażenie o tym, jak skonfigurować wszystko, czego potrzebujemy, aby zacząć z GCM
Powiadomienia push Android przy użyciu Google Cloud Messaging (GCM), PHP i MySQL
źródło
Właściwie mam to teraz działające w gałęzi w moim drzewie Zend_Mobile: https://github.com/mwillbanks/Zend_Mobile/tree/feature/gcm
Zostanie to wydane wraz z ZF 1.12, jednak powinno dać ci kilka świetnych przykładów, jak to zrobić.
Oto krótka wersja demonstracyjna tego, jak to będzie działać ....
źródło
Wiele samouczków jest nieaktualnych, a nawet obecny kod nie uwzględnia aktualizacji identyfikatorów urządzenia lub wyrejestrowania urządzeń. Jeśli te elementy pozostaną niezaznaczone, ostatecznie spowoduje problemy, które uniemożliwiają otrzymywanie wiadomości. http://forum.loungekatt.com/viewtopic.php?t=63#p181
źródło
Możesz także wypróbować ten fragment kodu, źródło :
źródło
W powyższym skrypcie wystarczy zmienić:
Daj mi znać, jeśli masz jakiś problem z tym, że mogę pomyślnie otrzymać powiadomienie za pomocą tego samego skryptu.
źródło
Możesz użyć tej biblioteki PHP dostępnej na packagist:
https://github.com/CoreProc/gcm-php
Po zainstalowaniu możesz to zrobić:
źródło
Oto biblioteka, którą rozwidliłem z CodeMonkeysRU.
Powodem, dla którego dokonałem rozwidlenia, było to, że Google wymaga wykładniczego wycofania. Używam serwera redis do kolejkowania wiadomości i ponownego wysyłania po określonym czasie.
Zaktualizowałem go również, aby obsługiwał iOS.
https://github.com/stevetauber/php-gcm-queue
źródło
Oto kod Androida dla powyższego kodu PHP opublikowanego przez @Elad Nava
MainActivity.java (Aktywność Launchera)
GCMClientManager.java
PushNotificationService.java (generator powiadomień)
AndroidManifest.xml
źródło
Użyj tego
źródło
Wiem, że to późna odpowiedź, ale może być przydatna dla tych, którzy chcą tworzyć podobne aplikacje z obecnym formatem FCM (GCM jest przestarzałe).
Poniższy kod PHP został użyty do wysyłania podcastów tematycznych. Wszystkie aplikacje zarejestrowane we wspomnianym kanale / topis otrzymają to powiadomienie push.
źródło