I read aloud my books sometimes to help me concentrate. It takes a longer time but it helps to keep me focused.
I have tried to get good apps to read stuff to me and I have downloaded both paid and free apps:
1. NaturalReader reads books. It's free but limited in the length of read time after which you will need to pay. I like it but it's not very easy though to manage what and where to read from. I find it difficult to read from anywhere I want.
2. VoiceReader reads text files. I like this because the voices that you can download are good ones, and they don't cost too much. My only problem with it is that it only reads text files.
3. Speaky loads webpages and reads it for you. I like it and used it quite frequently before. It uploads selected webpages from my Pocket account and reads them. But after a few upgrades, I found it quite difficult to use.
I found out some time ago that I can get my iPhone's VoiceOver to read me my books in iBooks. But I don't use iBooks and so I tried it on my Kindle app and it works! Brilliantly.
Here is what you do:
1. Go to your iPhone's Settings, General, Assesibility, Assesibility Shortcut, choose VoiceOver. This is where when you triple click your phone'shome button, and the phone will read for you what's on your screen. Triple click again to disable VoiceOver.
2. Set up your VoiceOver function in your iPhone's Settings, General, Assesibility, VoiceOver. You don't have to switch on your VoiceOver. Choose your preferred voice and speaking rate.
3. Open your book in Kindle and at the page you want it to start reading, triple click the home button to begin. If it doesn't start reading after voicing out the function options, swipe down with two fingers. Tap with two fingers to pause and tap again to continue. To move between pages, swipe with three fingers.