Juggling the "Designer," "Blocks" and live-testing screens is confusing, but this is still the easiest means I know of programming a phone's accelerometer, text-to-speech engine, or other nifty hardware features.
Community Review for MIT App Inventor
The biggest strength of MIT App Inventor 2 is that the simplest app you can write with it happens to be incredibly fun and to have a big "wow" factor. Of all the coding tools I've used, App Inventor provides the easiest way to take advantage of phone hardware. With just a few blocks of code, students can get their phones or tablets to do things when they shake them (i.e. when the accelerometer senses a shaking movement). And, while it might take seven or eight clicks and drags of coding to get the phone to display a message on its screen, it only takes three or four clicks and drags to get the phone to use its text-to-speech engine to actually say a message aloud. Students love it, and it opens the door to all kinds of creative inventions, including apps that can help people who might have a hard time reading or seeing text. Can I recommend App Inventor at this point, though? No. Unlike other block-based coding platforms like Scratch or Tynker, App Inventor forces students to switch back and forth between a "Designer" screen and a "Blocks" screen just to write the code. To test the code to see what they're actually doing, students need to run a separate emulator program or connect an Android phone or tablet and run the code on this separate device. That's a lot of juggling for a student who's trying to learn coding. It's also an obstacle to anyone trying to create or find a simple introductory-level tutorial that might include screenshots or step-by-step directions. Many tutorials exist, and they are quite thoughtful, but they are not simple or intuitive. My students and I also intermittently experienced technical difficulties using the wireless "connect companion" feature for live testing. The App Inventor forum wasn't able to help us find a solution. They ultimately recommended using the emulator, which at the time of my writing gets mixed reviews from other teachers writing Graphite field notes.
How I Use It
This year, I taught a 12-class mini course to all Grade 7 students about mobile app design. We used MIT App Inventor 2. Students coded on Chromebooks and used the "connect companion" feature to live-test their code on Nexus 7 Android tablets.