Si l'on considère vos besoins, il existe également une autre solution. Il semble que vous connaissiez les dimensions dans dp au moment de la compilation, vous pouvez donc ajouter une entrée dimen dans les ressources. Ensuite, vous pouvez interroger l'entrée dimen et elle sera automatiquement convertie en pixels dans cet appel :
final float inPixels= mActivity.getResources().getDimension(R.dimen.dimen_entry_in_dp);
Et votre dimens.xml aura :
<dimen name="dimen_entry_in_dp">72dp</dimen>
En étendant cette idée, vous pouvez simplement stocker la valeur de 1dp ou 1sp en tant qu'entrée dimen et interroger cette valeur pour l'utiliser comme multiplicateur. En utilisant cette approche, vous isolerez le code de l'aspect mathématique et vous ferez confiance à la bibliothèque pour effectuer les calculs.