I think they cross-reference Android Advertising ID in their SDK. Have you ever logged to Facebook from your phone?
https://developers.facebook.com/docs/app-ads/targeting/mobil...
https://developers.facebook.com/docs/app-ads/targeting/mobil...
The third party data sources is the easy one. Log into service A on your computer and service A on your phone. Service A fingerprints both and sells the data to service B. Now service B knows how to correlate your behavior between devices even though you never logged in.
I’m sure you’ve logged in something on both your phone and computer. It doesn’t have to be Facebook.