I had not worked on the app in a few years. The Android OS was only version 2 when I built the original app and it is now at version 6.0. The app was failing to work on many phones for lots of reasons. Some were due to new restrictions imposed by the OS and many, admittedly, were due to coding mistakes on my part. While fixing these issues I've learned a lot about how to support the features that the app requires in the current OS and better methods to test and develop the code.
It's not possible for app developers to test all the devices supplied by such a large number of manufactures. We test on one or two real phones and we can test in the Android emulator but its hard to cover everything so compatibility problems are bound to surface. We can only try our best to be sure we have tested enough of the app to ensure it has the best chance of functioning properly from device to device and OS version to OS version. A very difficult job but an important one.
Once the app is published I'll write some additional blogs on how to overcome some of the major problems that prevented my app from working properly. The info is available online, if you GOOGLE hard enough, but I want to summarize it, in one place, so it can prove helpful to other developers who might struggle with the same types of issues. I'll be adding these blog posts over the next few months.