我需要检查我的 Android 应用中是否提供 firebase 消息传递 (FCM(,以便决定如何发送/处理通知。在Android设备上,可以对Google Play服务(GPS(进行检查,这在现有的Android上已经足够了。在LineageOS和类似平台上,如果没有GPS,可以安装microG之类的东西,并专门禁用FCM。在这种情况下,尽管 FCM 不可用,但上述检查将成功。有没有办法专门检查 FCM 是否已启用/禁用?microG 或类似的捆绑包是否为此提供了 API?
FirebaseApp.getInstance() throws IllegalStateException
你我的尝试以下解决方案
private val isFirebaseEnabled: Boolean
get() {
return try {
FirebaseApp.getInstance() != null. //that is always true, nevertheless it will throw exception if Firebase is not available
} catch (e: IllegalStateException) {
false
}
}