Firebase +权限

我刚刚将一个应用程序从Firebase 9.0.0更新到Firebase 9.0.2。 我使用短信+广告。

compile 'com.google.firebase:firebase-messaging:9.0.2' compile "com.google.firebase:firebase-ads:9.0.2" 

现在已经出现了很多不必要的许可

 android:name="android.permission.READ_PHONE_STATE" android:name="android.permission.READ_EXTERNAL_STORAGE" android:name="android.permission.WRITE_EXTERNAL_STORAGE" 

我没有在任何地方添加这些权限,因此它们必须来自Firebase。 我知道我的客户不喜欢这些权限,所以我删除了它们

    

我的应用程序仍然有效,消息和广告仍然有效,但我仍然怀疑我的怀疑。

为什么Firebase会添加这些权限,是否可以像我一样删除它们?

此问题已在12.0.1中修复。 来源https://developers.google.com/android/guides/releases

2018年3月28日 – Verison 12.0.1

12.0.1中修复的问题:

  • 修复了引发虚假Android lint错误的问题,声称GoogleSignIn和CredentialsClient仅限内部使用。
  • 在-license工件中添加缺少的minSdkVersion,以防止自动包含READ_PHONE_STATE和READ_EXTERNAL_STORAGE权限。
  • 恢复运行时链接-license工件的唯一包名称,这会影响某些构建系统(例如Ionic Pro)兼容性问题。
  • 恢复在12.0.1中混淆的一些字段名称,即firebase-firestore和firebase-database中@PropertyName注释的value()方法。
 android:name="android.permission.READ_PHONE_STATE" android:name="android.permission.READ_EXTERNAL_STORAGE" android:name="android.permission.WRITE_EXTERNAL_STORAGE" 

这些权限不同,它们不在fcm中使用。

PHONE_STATE了解手机当前状态的权限

READ_EXTERNAL_STORAGEWRITE_EXTERNAL_STORAGE在您的应用程序中添加和删除内存中的文件,如果您没有使用这些function,可以将其删除。