Logowanie do Facebooka w aplikacji Android. Facebook SDK

Posted on by 0 comment

W poprzednim wpisie zaimportowaliśmy środowisko Facebook SDK oraz przykładowe projekty do Eclipsa. Dzisiaj stworzymy nową aplikację Android, podepniemy do niej Facebook SDK oraz umożliwmy w niej logowanie i wylogowanie.

Utworzenie projektu Android

Należy utworzyć projekt na platformę Android z wymaganym API 9 lub wyższym.

Dołączenie biblioteki

Otwieramy Properties naszego projektu (klikamy prawym przyciskiem myszy na wcześniej utworzony projekt), wybieramy z menu Android. Następne wybieramy button Add i wskazujemy projekt Facebook SDK, zatwierdzamy poprzez kliknięcie OK.

Facebook SDK Library

Facebook SDK Library

Po zamknięciu tego okna, należy ponownie otworzyć proporties i sprawdzić, czy koło referencji do projektu Facebook SDK widnieje nadal zielony znacznik, jeśli nie to odsyłam do sekcji Troubleshooting, która znajduje się na dole tego artykułu.

Konfiguracja

1. Musimy stworzyć własną aplikację na stronie Facebook’a https://developers.facebook.com, gdy ją stworzymy w Settings aplikacji włączamy Single Sign On.

2. Kolejny krokiem jest dodanie nowej wartości w res/values/strings.xml naszej głównej aplikacji w Eclipse o nazwie ‚facebook_app_id‚ i wpisać do niego App ID przed chwilą stworzonej aplikacji.

3. Kolejną rzeczą jest dodanie Uses Permission ‚android.permission.INTERNET‚, w manifeście AndroidManifest.xml, na karcie Permissions.

4. Do manifestu dopisać następującą meta-data:

Umożliwienie logowania

1. Kopiujemy pliki .png z projektu Scrumptious z folderu res/drawable, do naszego projektu, np.do res/drawable-mdpi .

2. Tworzymy nową klasę w folderze src w naszej aplikacji (końcowy efekt):

3. Następnie dodajemy plik ‚splash.xml‚ w ‚res/layout‚ naszego projektu (końcowy efekt):

4. Przechodzimy do ‚res/values/strings.xml‚ naszego projektu i dodajemy:

5. Dodajemy do projektu kolejną klasę, ‚SelectionFragment‚ (końcowy efekt) :

6. Dodajemy do ‚res/layout’ widok ‚selection.xml‚ (końcowy efekt):

7. Modyfikujemy nasz główny widok projektu w moim przypadku ‚res/layout/activity-main.xml‚, zwróćcie uwagę na nazwę pakietu, umieśćcie nazwę własnego (końcowy efekt):

8. Do manifestu należy dodać jeszcze informację o używanym Activity:

Możemy teraz się zalogować do naszego konta facebook, ale nie możemy się jeszcze wylogować to za chwilę.

Logowanie Facebook SDK

Logowanie Facebook SDK

Logowanie Facebook SDK

Logowanie Facebook SDK

 

Wylogowywanie

1. Do głównego widoku dodać:

2. Do „res/values/string.xml” dopisać:

3. W „MainActivity.java” należy dopisać:

podmienić definicję obiektu z

na

do metody onCreate() dopisać:

oraz zredefiniować metodę „onOptionsItemSelected(…)

Jeśli mamy w głównej aktywności mamy metodę onCreateOptionsMenu(…) to ją usuwamy.

Dzięki tym operacjom umożliwiliśmy sobie wylogowanie się z naszego konta, aby wyświetlić ekran wylogowywania należy kliknąć „settings” z opcji aplikacji.

Wylogowanie Facebook SDK

Wylogowywanie Facebook SDK

 

Troubleshooting

  • niemożność dodania referencji do Facebook SDK – borykałem się sporo czasu z tym problemem, moim zdaniem dzieje się tak, gdy pliki biblioteki umieścimy w miejscu, gdzie Windows, nie zezwala na dostęp nieupoważnionych osób, aplikacji, np. „C:\”. Ten sam problem pojawił się, gdy umieściłem pliki biblioteki na innej partycji niż mój projekt na Androida w Eclipse, dlatego proponuje skopiować pliki biblioteki Facebook SDK do „”C:\Users\nazwa_konta\Documents\”, jeśli nasza aplikacja znajduje się gdzieś na dysku C:\.
  • Found 3 versions of android-support-v4.jar in the dependency list – spowodowane jest to różnymi wersjami pliku „android-support-v4.jar” w pakiecie. Rozwiązałem ten problem poprzez zastąpienie android-support-v4.jar we wszystkich pozostałych lokalizacjach, wersją z projektu appcompat_v7 (katalog libs). Po tym wszystkim, trzeba jeszcze „wyczyścić” wszystkie projekty Project -> Clean (Clean all projects).

Podsumowanie

Pokrótce poznaliśmy jakąś część możliwości, które udostępnia deweloperom Facebook. Dodaliśmy do naszej aplikacji logowanie na nasze konto. W dalszym etapie można napisać funkcjonalności zezwalające przeglądanie listy znajomych, publikowanie postów, czy wreszcie wysyłać zapytanie FQL. W paczce, którą pobraliśmy znajduje się kilka przykładowych projektów o przeróżnej funkcjonalności, warto z nich korzystać, bo po co wynajdować koło na nowo?

Zapraszam do innych artykułów z serii.

Artykuł powstał na podstawie tutorial’u udostępnianego na stronie https://developers.facebook.com, można tam znaleźć inne samouczki, które prowadzą za rękę przy implementowaniu funkcjonalności.

 

 

Dodaj komentarz