사실 토큰 발급 자체는 어렵지 않았다!
import 'package:firebase_messaging/firebase_messaging.dart';
FirebaseMessaging.instance
.getToken(
vapidKey:
'여기에는 어떤 값 넣지 ?')
vapidKey 자리에는 어떤 값을 넣어야 하는가 ?
firebase에서 프로젝트를 만들면,
프로젝트 설정 -> 클라우드 메시징 -> Cloud Messaging API의 서버키 를 vapidKey에 넣어주었다.
//ios나 mac의 경우
String? token = await FirebaseMessaging.instance.getAPNSToken();
코드인 것 같다. (아직 ios를 위한 토큰을 발급을 안해서, 추후에 더 추가해봐야겠다!)
getAPNSToken()함수의 설명을 읽어보면, FCM service를 사용하지 않을 때 매세지를 보내고 싶다면 필요하다고 되어있다.
따라서 FCM token을 사용하기 위해서는 해당 함수를 쓰면 안될 것 같다! (실제로도 에러가 났다)
=> 결론 : FCM token발급은 OS에 관계없이 위에서 나타낸 FCM토큰 발급 코드를 사용한다!
token은 user마다 하나씩 db에 저장되어야 나중에 user의 기기로 Push 알림을 보낼 수 있다. (토큰 : user 기기 = 1: 1)
initialUrlRequest: URLRequest(url: Uri.parse("~~~~~")),
이 때, url 뒤에 발급했던 fcm token을 파라미터로 붙여서 넘겨준다.
fcm token을 뒤에 붙인 url의 모습은 다음과 같다.
예) https://www.google.co.kr/?token=~~~~~~~~~~~~~