[Android] 기존 앱에 Firebase를 넣었을 때 빠져들었던 이야기.
그러나 기존 앱에 편입돼 발표 전 동작을 확인할 때 예상 밖의 문제가 발생해 빠져서 남았다.
Firebase Analytics 및 Notification 기능을 사용하려고 합니다.
(동작 확인은 기본적으로 Nexus5의 6.0.1로 수행됨)
기존play-services 라이브러리와 충돌
결론
문제점 및 해결 방법
문제점
기존 응용 프로그램에서play-services를 사용할 때 "Get Started"와 같이 라이브러리와 플러그인을 직접 추가하면 ANR이 발생합니다.
※ 어플리케이션이 시작되면 홈 화면으로 다시 어플리케이션으로 돌아갈 때 ANR이 발생하기 때문에 주의하기 어렵습니다...
라이브러리 충돌.
해결 방법
이미 구글 Analytics 등을 사용해 "Get Started"에 따라 가져오면 다음과 같다.
app/build.gradle (대응 전)
dependencies {
// 略
// google play service
compile 'com.google.android.gms:play-services:9.0.2'
compile 'com.google.android.gms:play-services-base:9.0.2'
compile 'com.google.android.gms:play-services-gcm:9.0.2'
// ADD Firebase
compile 'com.google.firebase:firebase-core:9.0.2'
compile 'com.google.firebase:firebase-messaging:9.0.2'
compile 'com.google.firebase:firebase-crash:9.0.2'
}
apply plugin: 'com.google.gms.google-services'
play-services를 삭제한 후play-service-analytics를 추가하면 됩니다.(Analytics를 사용하지 않는 경우 추가 필요 없음)app/build.지원 후
dependencies {
// 略
// google play service
compile 'com.google.android.gms:play-services-base:9.0.2'
compile 'com.google.android.gms:play-services-gcm:9.0.2'
compile 'com.google.android.gms:play-services-analytics:9.0.2'
// ADD Firebase
compile 'com.google.firebase:firebase-core:9.0.2'
compile 'com.google.firebase:firebase-messaging:9.0.2'
compile 'com.google.firebase:firebase-crash:9.0.2'
}
apply plugin: 'com.google.gms.google-services'
공지 아이콘을 사용자 정의할 수 없습니다.
결론
문제점 및 해결 방법
문제점
9.0.2 현재 상황은 Firebase Notification에서 응용 프로그램이 백그라운드에 나타날 때공지 아이콘을 사용자 정의할 수 없습니다..
사용하는 아이콘은 응용 프로그램의 Launcher 아이콘이지만 Notification용 아이콘으로 변경할 수 없습니다.
그리고 아이콘 이미지는 smallIcon에 설정된 규격인 것 같아서 안드로이드 단말기 버전에 따라 아이콘을 판별할 수 없습니다.
(수중에 4.x와 6개의 단말기만 있고 5.0 이상의 단말기는 판별할 수 없습니까?)
따라서 흔히 볼 수 있는 원각 사각형 아이콘에 서비스 이름 등이 적힌 아이콘이라면 전혀 판별할 수 없다.
앞뒤의 외관에 대응하다
둥근 모서리의 사각형 아이콘 (빨간색 테두리 밖 투과) 을 사용했지만 다음과 같이 어떤 응용 프로그램이 알렸는지 전혀 알 수 없습니다...
배경 투사 윤곽만 아는 아이콘으로 만들면
왠지 어떤 앱에서 알림이 왔는지 알 것 같아.
Launcher 아이콘 예
예를 들어 아래 화면은 두 번째 단락의 Launcher 아이콘이라면 판별할 수 있지만 그 외에 어느 프로그램의 알림인지 알 수 없습니다.
그럼에도 불구하고 Launcher 아이콘을 쉽게 바꿀 수는 없을 것 같아서 Notification 아이콘을 좀 일찍 사용자 정의했으면 좋겠어요...
(사은품) Google Play 서비스를 Firebase APIs에 전송하는 동작
Google APIs for Android, 다음과 같은 기록이 있다.・App Invites (now Firebase Invites) is still available at com.google.android.gms.appinvite, but going forward you should use com.google.firebase:firebase-invites.
・Firebase Cloud Messaging builds on and improves the Google Cloud Messaging API. You can keep using Google Cloud Messaging with com.google.android.gms.gcm, but we recommend upgrading to com.google.firebase:firebase-messaging.
초의역은 다음과 같다.
・App Invites (now Firebase Invites) is still available at com.google.android.gms.appinvite, but going forward you should use com.google.firebase:firebase-invites.
・Firebase Cloud Messaging builds on and improves the Google Cloud Messaging API. You can keep using Google Cloud Messaging with com.google.android.gms.gcm, but we recommend upgrading to com.google.firebase:firebase-messaging.
com.google.firebase:firebase-invites
를 사용하려면 를 사용하십시오.com.google.android.gms.appinvite
지금은 사용할 수 있지만 사용할 수 없는지도 모른다.com.google.android.gms.gcm
도 사용할 수 있지만 com.google.firebase
Firebase Cloud Messaging으로 옮기는 것을 추천합니다.구글 교도들은 이 시기에 Firebase를 도입하는 것이 어떤지 고려해 보려고 한다.
기념책
Reference
이 문제에 관하여([Android] 기존 앱에 Firebase를 넣었을 때 빠져들었던 이야기.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/SnowMonkey/items/5b9019a936aa6762cf53텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)