Device differences
Now that you have got a handle on how to build the resources into your application, the final item is dealing with physical differences in devices. You never know what type of device your application will be running on. The only thing you can really count on in a device is that the device will have a screen. The best impression you can give your customers is an app that doesn't crash, even if it doesn't support the device they are trying to run it on.
Each device will have different sensors and different accessories, and some might even have a physical keyboard. Take the Samsung Galaxy S4 phone. It came with sensors to detect altitude, humidity, and temperature. You might guess that the Samsung Galaxy S5 would also have the same sensors. When Samsung released their new flagship phone, they actually removed or disabled the Humidity and Temperature sensors. Fast forward to the new Samsung Galaxy S6, they now removed SD card support. Despite being flagship devices, Samsung...