Je récupère une couleur comme celle-ci et renvoie 0 pour quelques périphériques que je vois sur les rapports d'erreur. Ils sont tous en res/values/colors.xml
. Ex. <color name="firstcolor">#A8A77A</color>
. Le colorString
est dynamique.Resources.NotFoundException uniquement sur certains périphériques
int primaryColor = ContextCompat.getColor(context,
context.getResources().getIdentifier(colorString.toLowerCase(),
context.getString(R.string.color), context.getPackageName()));
Je l'ai testé sur ces appareils et il fonctionne: LG G5 (7.0) - Nokia N1 (5.1.1) - Motorola G (5.1) - Samsung de base Prime (4.4.4)
Les rapports d'erreur sont de ceux-ci: Samsung Ace 4 (4.4.2) - Sony Xperia M5 E5603 (6.0) - NG Envy (4.4.2)
Fatal Exception: android.content.res.Resources$NotFoundException: Resource ID #0x0
at android.content.res.Resources.getValue(Resources.java:1133)
at android.content.res.Resources.getColor(Resources.java:815)
at android.support.v4.content.ContextCompat.getColor(ContextCompat.java:434)
Toute façon de savoir pourquoi ça fait Sn't travailler pour certains de ces appareils?
Non, je dois les obtenir dynamiquement avec l'ID. Il y a de nombreuses couleurs. – ono