À la suite de la Google developer des instructions sur la mise en œuvre de Firebase dans mon application, j'ai remarqué que android peluches se plaint.
L'idée est que nous devons mettre en place deux services qui héritent de Firebase services:
public class MyFirebaseInstanceIDService extends FirebaseInstanceIdService { ... }
public class MyFirebaseMessagingService extends FirebaseMessagingService { ... }
et ensuite vous inscrire à ces services dans le manifeste. Mais, ce n'est pas tout à fait parfaite. En particulier, ces deux recommandée AndroidManifest.xml les entrées de service ne contiennent pas toutes les autorisations spéciales:
<service android:name=".MyFirebaseMessagingService">
<intent-filter>
<action android:name="com.google.firebase.MESSAGING_EVENT"/>
</intent-filter>
</service>
<service android:name=".MyFirebaseInstanceIDService">
<intent-filter>
<action android:name="com.google.firebase.INSTANCE_ID_EVENT"/>
</intent-filter>
</service>
et donc le linter dit:
Exporté des services (les services qui soit définir exporté=true ou contenir un intent-filter et ne spécifiez pas exporté=false) doit définir une permission, une entité doit avoir afin de lancer le service, ou de se lier à elle. Sans tout cela, l'application peut utiliser ce service.
Dois-je simplement ajouter cet attribut pour chaque numéro de service et être fait avec elle
tools:ignore="ExportedService"
ou est-il une meilleure approche dans cette situation? Je veux dire, est-il sûr d'exposer ces Firebase provenant des services de ce genre?