Android Game Controllers - bibanon/android-development-codex GitHub Wiki
Smartphones have much more power than the consoles of old, but there's no beating the responsiveness and novelty of a game controller. And now that hardware keyboards are out of vogue, the touchscreen is all we have left.
What if we could combine the buttons of a game controller and the portable power of a smartphone? Well, you can! Just get a Wiimote or PS3 controller, and you now have a handy portable game system.
Most of modern game controllers are wireless, whereas before they used proprietary wired connections. The PS3 and Wiimote controllers in particular use bluetooth, making them perfect for use on PCs and smartphones.
Special apps (WiimoteController, Sixaxis) are used to connect to the controllers. The apps map specific button presses to keyboard buttons or swipe actions on the Android.
If your Android supports USB Host, you can also directly connect the PS3 controller through the USB port. The Sixaxis app can be used to manage it, or some special games will be able to use it directly.
The wiimote is a cheap and extendable game controller used on the Nintendo Wii. While it only has a few buttons, just connect a few peripherals to it to add buttons or joysticks.
Don't feel like holding both a controller and a smartphone? Clip a PS3 controller to your phone with this stand, and you've got an instant portable game system
Xbox 360 controllers are not supported due to the use of a proprietary wireless connection, rather than the bluetooth standard. The PC adapter would have to be adapted to work with Androids, limiting it's portability.