반응형
Java 서버 환경에서 Firebase Admin SDK 를 이용하여 Fcm 발송을 구현
API 샘플 코드대로 구현 하였으나 아래와 같은 오류 발생
java.lang.IllegalStateException: FirebaseApp name [DEFAULT] already exists!
해결 방법 검색 결과 DEFAULT_APP_NAMEFirebaseApp.initializeApp 을 한번만 호출해야하는데 여러번 호출해서 발생하는 오류이다.
- 기존코드
FirebaseOptions options = new FirebaseOptions.Builder()
.setCredentials(GoogleCredentials.fromStream(serviceAccount))
.setDatabaseUrl("https://주소.firebaseio.com")
.build();
FirebaseApp.initializeApp(options);
- 수정코드
FirebaseApp firebaseApp = null;
List firebaseApps = FirebaseApp.getApps();
if(firebaseApps != null && !firebaseApps.isEmpty()){
for(FirebaseApp app : firebaseApps){
if(app.getName().equals(FirebaseApp.DEFAULT_APP_NAME)) {
firebaseApp = app;
}
}
}else{
FirebaseOptions options = new FirebaseOptions.Builder()
.setCredentials(GoogleCredentials.fromStream(serviceAccount))
.setDatabaseUrl("https://주소.firebaseio.com")
.build();
firebaseApp = FirebaseApp.initializeApp(options);
}
반응형
'Android' 카테고리의 다른 글
| [android] retrofit2 JSONP 데이터 파싱 (0) | 2019.07.09 |
|---|---|
| [android] YouTubePlayerFragment fullscreen error 유튜브 API 전체화면 오류 (0) | 2019.06.04 |
| 안드로이드 전화번호부에 저장된 이름 가져오기 (0) | 2014.03.13 |
| activity 없이 service 만 실행하기(앱 화면 없이 실행하기) (1) | 2014.03.13 |
| 앱 아이콘 안보아게 하는 방법 (5) | 2014.03.13 |