Сообщение GCM не приходит в мое приложение, когда мое приложение закрыто

я хочу показывать уведомления MY GCM пользователям, когда мое приложение закрыто или очищено из кеш-памяти, ниже мой код работает только тогда, когда приложение открыто, но не работает в фоновом режиме:

public function send_notification($registatoin_ids, $message) {
include_once 'dbconfig.php';
// Set POST variables
$url = 'https://android.googleapis.com/gcm/send';
$fields = array(
'registration_ids' => $registatoin_ids,
'data' => $message,
);

Смартфон не видит никаких услуг в моем приложении. Вот скриншот, где вы можете сравнить мое приложение с другими, такими как WhatsApp:
введите описание изображения здесь

Ниже моя часть Манифеста о GCM:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"package="my.app.path" >

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<!-- ... other permissions -->

<permission
android:name="my.app.path.permission.C2D_MESSAGE"android:protectionLevel="signature" />

<uses-permission android:name="my.app.path.permission.C2D_MESSAGE" />

<application
...>
<!-- ... activites... -->

<receiver
android:name="com.google.android.gms.gcm.GcmReceiver"android:exported="true"android:permission="com.google.android.c2dm.permission.SEND" >
<intent-filter>
<action android:name="com.google.android.c2dm.intent.RECEIVE" />
<category android:name="my.app.path" />
</intent-filter>
</receiver>

<service
android:name=".MyGcmListener"android:exported="false"android:enabled="true" >
<intent-filter>
<action android:name="com.google.android.c2dm.intent.RECEIVE" />
</intent-filter>
</service>

</application>

</manifest>

Я хочу показать уведомления, как WhatsApp.

3

Решение

Вы пробовали, если это помогает установить приоритет high при отправке сообщений?

Установлен в High priority разрешить службе GCM разбудить спящее устройство, когда это возможно, и открыть сетевое подключение к серверу приложений. Например, приложениям с мгновенными сообщениями, чатами или голосовыми вызовами обычно требуется открыть сетевое соединение и убедиться, что GCM доставляет сообщение на устройство без задержки. Установите высокий приоритет только в том случае, если сообщение является критичным по времени и требует немедленного взаимодействия с пользователем, и имейте в виду, что установка для ваших сообщений высокого приоритета в большей степени способствует разрядке батареи по сравнению с сообщениями с обычным приоритетом.

0

Другие решения

Других решений пока нет …