I would seriously consider putting an Android head unit in the car. I put one in one of my cars and love it. I bought an ATT hotspot that I plugged in as well so the Android has its own internet connection. I installed Waze, Stitcher and Pandora on the radio so it has access to all of my stuff. And on top of that you can use a Bluetooth OBD connector to get Torque diagnostics in the middle of your dash.
Oh, and they have direct connect for the steering wheel controls so no extra box/programming. It's all in the unit.
Make sure you get one that has front-to-back fade, some of them don't. Often times you can tell from the screens of the Android app working.
And finally, I got one without a DVD/CD slot since I never use it, screen is bigger. But I've not yet been able to find a bezel to fill up the gap in the dash. A friend of mine volunteered to 3D print one for me, I just have to do the work to get him a CAD model. But with the project to swap engines in my son's car I've been busy
they're cheap too. Mine was $180 shipped. (although it does have an older version of Android, but I really didn't care too much)