[Android Apps and Games] anidamo:
Mango developer here, felt I should chime in.

Fair warning, this is a huge post, but I'll explain exactly what these permissions are used for, and how they are used.

The Read System Log permission is used for debugging and troubleshooting purposes. As you use the app, Mango writes general diagnostic information about its performance to the Android system log. Later on, if the user goes to Send Feedback and selects "I'm having an issue", Mango will include diagnostic information from the log along with the user's message. I've found this to be invaluable when the user emails me stating "it doesnt work fix plz" and the diagnostic log shows that their SD card is full and Mango can't write anything to it. Most importantly, when the app force closes, a stack trace is written to the log pinpointing the exact line of code causing the FC.

A few things to note about the log data:

-It only ever leaves your phone when you use the Send Feedback function, compose a message, and send that message via your Email app (the diagnostic data is appended to the end of the email, you can view it before sending, or delete it if you don't wish for it to be sent)

-You can view the data at any time by going to Settings and Help >> Advanced Options >> Debug Log

-Only data that Mango has written to the log itself is ever read from the log. Though the system log is shared by all apps and the OS itself, Mango filters the log to only read data with the "MANGO" tag.

I am planning on implementing a custom logger soon so that Mango can read and write log data in it's own isolated log file, allowing me to remove the permission requirement.

Regarding the Read Phone State and Identity permission, this one is used to get the device UUID. The permission also allows the requesting app to view the phone number of an incoming call, which is why the header is "Phone Calls" in the Android permission warning screen. Mango has no reason to see or use that data, so it does not ever use the functionality, but it's a package deal included with the ability to use the getDeviceId API.

Unfortunately this one is required by the MobClix SDK used to display ads and is used by Mango to differentiate one device from another. Since there are no usernames/user accounts, but Mango uses an external server to do lots of the app's work, the server needs to be able to tell one device from another, and since IP addresses are often shared between many phones on a carrier, the server uses the device UUID instead.

It is important to note that the Mango Service does not associate your UUID with any reading history or favorites... that's kept on your device and never touches the server (though in the future, I might add an optional cloud sync feature). The only data associated with your UUID in the server's database are your Android version number, your phone's model number, your Mango version number, whether or not you've purchased the ad-free version, and the total number of times you've started the app. This lets me generate some basic stats about the app's usage, which you can view here:

http://mangoservice.leetsoft.net/stats.png

The UUID (rather, a hash of it, not the ID itself) is also used by the Flurry Analytics component which provides me with some more detailed (but still aggregated and anonymized) stats regarding app usage, such as how many users per week I see, what paths users most frequently take throughout the app, the number of favorites users have, and the Preferences they have enabled. For example, it lets me see that about 46% of Mango users have more than 20 favorites, about 14% of users check the "Left-to-Right Reading" option, and that only 8% of Mango users use the filtering option in the Favorites menu (clearly, it's something I need to promote more visibly in the next version, because it's an awesome feature and almost nobody is using it... :S ). I can't tell which options any individual user is using, since all of the data is aggregated and anonymized.

The user must opt-in to analytics... it is disabled by default and is only turned on if the user selects "Yes" to the "Enable Analytics?" option that appears when you first start the app. The user can also change this setting at any time from the Preferences menu.

/whew, I think that about covers it. Obviously there's no way for me to prove that what I've said above is true and it's completely up to you to believe me or not. But I write and maintain Mango as a hobby (though, thanks to the incredible response it's received, it's a hobby that's paying for my tuition!) and I really don't have any nefarious plot to use your data. :P

If you have any more questions, let me know. I don't check this thread super-frequently, but if you email me (mango@leetsoft.net) I'll probably get back to you within 24 hours. :)

Also, thanks iasookia for making this thread!