Уведомление FireBase не работает при новых установкахIOS

Программируем под IOS
Ответить
Anonymous
 Уведомление FireBase не работает при новых установках

Сообщение Anonymous »

В моем приложении я сталкиваюсь с проблемой с push-notification . Firebase-Notification конфигурация выполняется идеально. И уведомление о рабочем тесте, которое отправляется из Firebase-Console. Теперь я сталкиваюсь с проблемой, когда уведомление запускается со стороны бэкэнд, и уведомление не получается ни в одном из моих устройства iOS , где приложение установлено.
После завершения приложения, если я сделаю зарегистрированный , а затем re-login , то он работает нормально со стороны бэкэнд.
  • Регистрация устройства для token < /strong> < /li>
    < /ul>

    func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) {
    Messaging.messaging().apnsToken = deviceToken
    deviceTokenString = deviceToken.reduce("", {$0 + String(format: "%02X", $1)})
    fcmTokenString = Messaging.messaging().fcmToken ?? ""

    print("deviceTokenString \(deviceTokenString)")
    print("fcmToken \(Messaging.messaging().fcmToken ?? "")")

    UIViewController().deviceToken = deviceTokenString //This will stored in UserDefault
    UIViewController().fcmToken = fcmTokenString //This will stored in UserDefault
    }


    Консоль Firebase — обмен сообщениями
Изображение
  • Уведомление< /strong> получен

Изображение

  • Laravel Верхний код
$url = 'https://fcm.googleapis.com/fcm/send';
$FcmToken = User::whereNotNull('fcm_token')->pluck('fcm_token')->all();
// echo ""; print_r($FcmToken); die;
// $sendusersids = User::whereIn('id', $users_ids)->whereNotNull('fcm_token')->pluck('id')->all();

foreach ($FcmToken as $key => $FcmTokenone) {

$fcmService = new FCMService();
// dd($fcmService);

// $deviceToken = 'eAzUspsvcEvIjjZ0NVuwBp:APA91bHLgRtV-Oa3xl3HbalmZuhbaslU_IO8HnPi15OL8AabK6aSPF-lo7AC1GcA4BL_YW1osBpMXvuc4nXWtOySqjDQDp1tpGcyzwc8QoTd5Ay3_iayoAw'; // Token for the device you want to notify
// $deviceToken = 'fbb-W4NZQni5DUkk6fgnPy:APA91bGBUCFueEuUZnad-0jKWusKQoygeQtrvGz6BwfSgBv6RLfJh3U-beEXeIp_S36j4xc5NOsFIexSG4xiM4i3iKBGMb3qnbg-NPB6VgjWfuwM6XnAtW8'; // peterson fcm token

$title = 'GLO Mini Golf Promo code';
$body = $data['description'];

$data1 = [
// "registration_ids" => [$deviceToken],
// "registration_ids" => [$FcmTokenone[0]],
"registration_ids" => [$FcmTokenone],
"notification" => [
"title" => $title,
"body" => $body,
],
"data" => [
"type" => 'group',
"id" => 123,
]
];

$response = $fcmService->sendNotification($data1);
Log::error("pushnotificaiotn-->".$response);

$this->client = new Client();
$this->serverKey = env('FIREBASE_SERVER_KEY'); // Server key from Firebase credentials
$this->projectId = env('FIREBASE_PROJECT_ID'); // Firebase project ID

public function sendNotification($notification_data)
{
$access_token = self::getAccessToken();

$device_token = $notification_data['registration_ids'][0];
$title = $notification_data['notification']['title'];
$body = $notification_data['notification']['body'];
$type = $notification_data['data']['type'];
$id = $notification_data['data']['id'];

$message = array(
'token' => $device_token,
'notification' => [
"title" => $title,
"body" => $body,
],
'data' => [
"type" => (string)$type,
"id" => (string)$id
],
);

Log::error("notification_message--->".json_encode($message));

$arrayToSend = array('message' => $message);

$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://fcm.googleapis.com/v1/projects/ ... sages:send",
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode($arrayToSend),
CURLOPT_HTTPHEADER => array(
"authorization: Bearer ".$access_token,
"cache-control: no-cache",
"content-type: application/json"
),
));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($curl);
Log::error("notification_res-->".$response);
if ($response === false) {
$error = curl_error($curl);
Log::error("sendNotification error".$error);
curl_close($curl);
}

curl_close($curl);
Log::error("sendNotification success ".$response);
$responseData = json_decode($response, true);
return true;
}

  • Notification Журнал статуса доставки
[2025-01-23 12:26:40] production.ERROR: pushnotificaiotn-->1
[2025-01-23 12:26:40] production.INFO: Access Token Generated Successfully: {"access_token":"ya29.c.c0ASRK0GbNRMdPbCklv1jZ1uBkgD-Y5an_0WW3GIXYQisl3daLuFO4i0_fxAdpVu8RxKCNSJZ-HUQJFu1au3C618-NkZsB0yd8OdO_-wLVXwyrPJ782c-uPhkhvOI4DceC7qvBfQjo7SIb9I6BQ2C06ZSpnBrNJvhGL_dly6t4ufYCwknPawDuGRyHD5pOb_jVsaxEqAs5ZxEMJEPMoGnZowWMHxosKtwHB-ofno_P6TYQUMYL9iKF4nr8H6XYjrGX8EQl0JrduwpS4hXn_rCCY05y4zdTO_GGAb_Dii88qhxGmwLo0MJfuMnHUJrrGBtd2UPys6K5DPcsFs9Bhb2N8w1u2PT7XAIk1NFsLYSiyZ7B2ozySW8B30NmE385AZ0UmIuy-k_psZrjcR1zYh0IFyFBy3Va3_nfUStWI0Ou9Q-8knZiMVUyhjM787tcyFavFO5hUV9ux4appgi45kwua-t8S1uOJjrlj1R23lpU8IeXaOmdoug6o2c1hbIM94aO_cnh7VcWszMp7OYn3Qvb72jhr0IV1M0RQwy2hvb67zJuIVyRk1e2Fh-Wj3yQfmer02YyRxj7rSXJo2Q2MIioQYVfO6ym4ixczddkuvYliocptSrYdcskyQYV6Jv7ZW2tw8wMI0nJ9v0gSJdktpwYr219Mmwt1pwp6WZ37tpJYQkUB9mrO2furu0Vqyam59M-nfloxMeInhOo9-8a80poFrQupYIk665ntwWBdVs4td0JQWF1FVnvsQqM9Z7emsF075ecag9xXJ2is3Q_M58OdgzFjqioXVI5aBZvd-x81nsJz7zMp3Za0B0kZYIsbl7-xdtt-OweQsntoh65oa_O-Xnhpfpku8xidZ5V642foF9rvzj16hQxxk4V2aO1Qpj5g1eYt2j_g_kJtgBYWoOjaIIewXspg_goIMz4xz28jcMV88cv_I3-w9bj0w705vtxyiSrORp7ZpUyOfWiFqja4tVtjV4Qmzy3zv5tWxpRz6Op2xljnI8VyX9","expires_in":3599,"token_type":"Bearer","created":1737635200}
[2025-01-23 12:26:40] production.ERROR: notification_message--->{"token":"csQwYhf3FUnvuyLVhHCFEq:APA91bFIMKRtNOaRC0p_-Hgl6bgSg7C-lEQ7uBSUHBivNIH5lra8hnl92ZSm9lcfk9N4gpCwwP8w26s3iX0d121ehEr2S7-S7zbSBFgYNUOZaEDDszOUEtL_uHzIgbOykb85Au_zUcED","notification":{"title":"GLO Mini Golf Promo code","body":"test"},"data":{"type":"group","id":"123"}}
[2025-01-23 12:26:41] production.ERROR: notification_res-->{
"name": "projects/glo-mini-golf-1dac4/messages/1737635200881686"
}

[2025-01-23 12:26:41] production.ERROR: sendNotification success {
"name": "projects/glo-mini-golf-1dac4/messages/1737635200881686"
}


Подробнее здесь: https://stackoverflow.com/questions/793 ... w-installs
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»