Google has had a policy that unless a tablet meets some specification, you cannot participate in the Google PlayStore. Sometimes tablets would meet the specification, but they weren't tested for it.
It used to be, most tablets, if they could get the PlayStore app loaded, will allow loading apps on your tablet. Now, Google seems to be enforcing the policy, and not allowing tablets and phones with Google PlayStore to download applications. The list of approved devices is pretty extensive, but not complete. One of my favorite vendors isn't on the list at all (JXD).
Like everything, there are ways around this. Sideloading is an old concept, and can be used. There is another way to load apps to your Android device, called pulling. I am not sure about the technicalities of the differences, but the idea is, if you have a legitimate Android device, that is approved to use the Google PlayStore, then you can get apps on the other device. They may not always work, but they probably will.
These loading methods won't let you get paid apps for free, but they will let you run free apps on devices that maybe Google doesn't think you should be able to run them on.
Probably the first app to load on these "unapproved" devices is GetJar. GetJar is another playstore like place that you can download apps to various devices. GetJar is smart about the devices you have, so you don't get Intel or Mips binaries on ARM devices. True, if you have a fat binary, the app will probably run on any processor, and most OS versions, but some apps require a minimum OS version (IE 4.1) and a specific processor (IE ARM).
The cheap tablets work, and can be used, but you have to know a little more than using a name brand tablet.