In Android, I've been using guidelines with app:layout_constraintGuide_percent to avoid having to hardcode dp values. I believe (could be wrong) that this helps keep UIs sane across various screen sizes and avoid having to support various different dimensions for various different configurations (e.g. for a button 25 dp from the left of the screen might look good on a phone but too close to the edge for a tablet, whereas constraining the button to a guideline 5 percent from the left is perfect on all devices).
What are the pros and cons of using dp values for spacing (e.g. layout_margin, padding, etc.) versus app:layout_constraintGuide_percent and guidelines? It seems to me that using guidelines is almost always better.