I have done a lot of research on this topic. It seems that facebook has set some permissions that allow only access to several system applications and third-party applications.
see, for example, this link: https://groups.google.com/forum/#!topic/android-developers/lREN16Hh4LQ
I also tried to decode the AndroidManifest.xml file from my facebook application, but even adding the permissions that they use internally did not give me access.
Users can set their own synchronization tools (available in the play store) to synchronize their contact with facebook. This works great. I can upload profile images to devices with tools installed.
Personally, I am a little disappointed that facebook will restrict such access. They should have added special permission for this.
source share