스마트웹앱콘텐츠전문가/안드로이드

[파이어베이스]클라우드 메시지

9D4U 2018. 7. 9. 18:33
728x90
반응형

파이어베이스에서 제공하는 클라우드 메시지를 사용하여 앱에 알람을 보내는 동작을 구현하려고 합니다.


시중에 나온 책들의 설명을 보시고, 아무런 오류 없이 제대로 동작이 구현된다면 다행입니다만, 

직접 구현해 본 결과, 당시 때 안드로이드 버전 및 라이브러리 버전을 사용해서 반영되어 있는 것이어서

몇몇 오류가 나서 제대로 동작을 구현하기 어려움이 있었습니다.


따라서, 이 오류를 해결함에 있어서 동작을 구현할 수 있었는데, 

발생 했던 오류와 해결 방법에 대해서 포스팅 하겠습니다.


1. 안드로이드 스튜디오에서 안드로이드 버전을 어떤 것을 선택하느냐에 따라 다르겠지만,

   앱을 디버그 했을 때, 

   'Conflict with dependency 'com.android.support:support-annotations' in project ':app'. Resolved versions     for app (26.1.0) and test app (27.1.1) differ.'

   이런 구문의 오류가 발생 했을 경우

 =>

   gradle.moduel(Module: app)의 구문 중 


androidTestImplementation ('com.android.support.test:runner:1.0.2') -> androidTestImplementation ('com.android.support.test:runner:1.0.1')

androidTestImplementation ('com.android.support.test.espresso:espresso-core:3.0.2') -> androidTestImplementation ('com.android.support.test.espresso:espresso-core:3.0.1') 로 변경해주면 됩니다.



2. 이 경우는 파이어베이스 클라우스 메시지 설정 시, 파이어베이스 페이지에서 제공하는 절차를 따라 하는 중에 발생한 문제     입니다.(※당시 기준 버전임을 주의! + 안드로이드 버전 및 라이브러리 버전 확인 필요!!!)

   파이어베이스 페이지 설명 당시, compile 'com.google.firebase:firebase-core:16.0.0'

  을 구문에 추가하라고 설명되어 있습니다.

  하지만, 

 '~java.lang.AbstractMethodError: abstract method "void com.google.firebase.iid.zzb.zzd(android.content.Intent)"

                      at com.google.firebase.iid.zzc.run(Unknown Source)~'

 이런 구문의 오류가 발생하였습니다.

=>

 compile 'com.google.firebase:firebase-core:16.0.0' -> compile 'com.google.firebase:firebase-core:10.2.1로 변경해주면 됩니다.


728x90