No, it's still not ok to track hardware IDs even (especially) for that reason: https://developer.android.com/training/articles/user-data-id...
The official recommendation:
Use: Instance ID or GUID. On Android 8.0 (API level 26) and higher, SSAID is also an option, as it's scoped to the app-signing key.
Why this recommendation?
Using a GUID or Instance ID forces the user to reinstall the app in order to circumvent the content limits, which is a sufficient burden to deter most people. If this isn't sufficient protection, Android provides a DRM API, which can be used to limit access to content, includes a per-APK identifier, the Widevine ID.
So I guess best practice in this case means they should use DRM instead.