FirebaseInstanceIdService deprecated
2021. 4. 23. 19:19ㆍAndroid/Firebase
반응형
FirebaseInstanceIdService가 deprecated가 됨에 따라 해당 서비스에서 제공하던 onTokenRefresh() 등의 메소드 사용이 불가
그리고, 기존에 앱 초기등록시 만들어지는 토큰을 FirebaseInstanceId.getInstance().getToken() 형식으로 간단히 받을 수 있었는데. 이또한 deprecated 되었다.
그렇다면 이제는 어떤거를 이용해야 하느냐하면 FirebaseMessagingService 클래스이다.
public class MyFirebaseMsgService extends FirebaseMessagingService {
/* 토큰이 새로 만들어질때나 refresh 될때 */
@Override
public void onNewToken(String s) {
super.onNewToken(s);
Log.e("NEW_TOKEN", refreshedToken);
/* DB서버로 새토큰을 업데이트시킬수 있는 부분 */
}
/* 메세지를 새롭게 받을때 */
@Override
public void onMessageReceived(RemoteMessage remoteMessage) {
Log.d(TAG, "From: " + remoteMessage.getFrom());
/* 새메세지를 알림기능을 적용하는 부분 */
if (remoteMessage.getNotification() != null) {
Log.d(TAG, "From: " + remoteMessage.getFrom());
Log.d(TAG, "Message Notification Body: " + remoteMessage.getNotification().getBody());
String messageBody = remoteMessage.getNotification().getBody();
String messageTitle = remoteMessage.getNotification().getTitle();
}
}
}
또한 AndroidManifest.xml 내에 적용해야 하는 코드이다.
<service
android:name=".MyFirebaseMsgService"
android:stopWithTask="false">
<intent-filter>
<action android:name="com.google.firebase.MESSAGING_EVENT" />
</intent-filter>
</service>
MainActivity.java 상에서 예전에는
String refreshedToken = FirebaseInstanceId.getInstance().getToken();
Log.d("FCM", "Refreshed Device token: " + refreshedToken);
이런식으로 이용해서 토큰값을 받았는데, 이제는 다음과 같이 해야한다.
FirebaseInstanceId.getInstance().getInstanceId().addOnSuccessListener( MyActivity.this, new OnSuccessListener<InstanceIdResult>() {
@Override
public void onSuccess(InstanceIdResult instanceIdResult) {
String newToken = instanceIdResult.getToken();
Log.e("newToken", newToken);
}
});
출처 : https://wonpaper.tistory.com/192
참고 : https://push.tason.com/resources/FirebaseInstanceIdService%20is%20deprecated.html
반응형
'Android > Firebase' 카테고리의 다른 글
FCM(Firebase Cloud Messaging) (1) | 2024.03.12 |
---|---|
딥링크 / 앱링크 / 다이나믹 링크 (0) | 2024.03.12 |
Firebase Multi Project 검토 (0) | 2023.10.19 |