2012-01-31 9 views
8

Próbuję pobrać następujący przypadek korzystania FQLlista get od użytkowników Facebooka, którzy korzystają z konkretnych aplikacji przy użyciu FQL

Jeśli kilku użytkowników zezwoliły „Zastosowanie A” wtedy to jest możliwe, by wiedzieć, że obecnie ilu użytkowników korzysta że „Zastosowanie a” (użytkownicy ci nie są przyjaciółmi siebie)

Dotychczas Próbowałem następujących FQL, ale następujące zapytanie zawiera jedynie informacje o tych użytkownikach, którzy są przyjaciele siebie i stosując tę ​​samą aplikację, ale a co z innymi użytkownikami, którzy nie są przyjaciółmi?

SELECT uid, name, pic_square 
FROM user 
WHERE is_app_user=1 AND uid IN (SELECT uid2 FROM friend WHERE uid1 = me()) 
+0

Czy FQL działa również dla użytkowników testowych? Ciągle otrzymuję pustą tablicę ... – l33t

+0

nie sądzę, że działa dla użytkowników testowych – Hunt

Odpowiedz

15

Nie można uzyskać listy użytkowników aplikacji z interfejsu API. Jeśli potrzebujesz tego, powinieneś utrzymywać swoją własną bazę użytkowników i odnosić się do tego.

Można również sprawdzić, czy konkretny użytkownik jest użytkownikiem aplikacji, żądając /USER_ID/permissions?fields=installed z tokenem dostępu do aplikacji.

Można również sprawdzić, czy znajomi użytkownika są użytkownikami aplikacji, żądając tego samego pola w połączeniu z przyjaciółmi (na przykład /USER_ID/friends?fields=installed). W takim przypadku USER_ID musi być użytkownikiem twojej aplikacji lub nie będziesz mieć dostępu do swojej listy znajomych.

3

Nie można uzyskać całkowitą liczbę użytkowników, którzy zainstalowali aplikację, ale można dostać dzienne, tygodniowe i miesięczne użytkownikom prostego zapytania:

SELECT daily_active_users, weekly_active_users, monthly_active_users 
    FROM application WHERE app_id = APPLICATION_ID 

Uwaga: to będzie pracować dla każdego aplikacja (nie tylko aplikacje, z którymi użytkownik się łączy)

8

is_app_user w tabeli użytkownika, gdy prosi znajomych, zwraca te dane.

SELECT uid, is_app_user od użytkownika WHERE uid IN (SELECT uid2 OD znajomego GDZIE uid1 = Me())

lub ...

SELECT uid, is_app_user od użytkownika GDZIE is_app_user I uid IN (SELECT uid2 FROM przyjaciela WHERE uid1 = me())

Co jest nieco bardziej rygorystyczne - zwracanie tylko tych użytkowników w aplikacji.

+2

koleś właśnie uratowałeś mi badania we wszystkich facebook fql apis :) – colthreepv

+0

tyle wygrać! dzięki. –

-1
SELECT uid FROM user WHERE uid IN (SELECT uid2 FROM friend 
WHERE uid1 = '549483876') AND is_app_user = 1