I have a canvas application that implement with a like gate as most of other applications. Unlike tab page application, to check whether user liked a fanpage, it requires user_likes permission, but my submission on user_likes was rejected several times. And below is the reply from the review team.
"Your request for user_likes permissions to see if a user has liked your page does not enhance a user's experience in the app and thus doesn't meet our utility guidelines. As an app developer, you can already see who has liked your page. Please do not resubmit for the user_likes permission. Please see https://developers.facebook.com/docs/facebook-login/permissions/v2.0 for more information about permissions."
Since they mentioned "As an app developer, you can already see who has liked your page."
I tested using a fan access token to request me/likes and FQL SELECT uid FROM page_fan WHERE uid=me() AND page_id=XXX, both return an empty array.
The results of using app token or page access token are also the same.
So I'm wandering if there any other method to tell whether a user has liked a page.
UPDATE : I'd killed all my like-gating, and informed my client that only can be done on tab page app now. Although my client still asking why FB encourages we incentivize a user for liking our page, but doesn't provide a method for us to do so ? (https://developers.facebook.com/policy#properuse )
@Wizkid, is that alright that we treat your reply as an official reply from FB ? We're going show this thread to the client, so they know this cannot be done.