Header Ads

Facebook SDK 4.0.0


Phiên Bản Android Studio : 1.2.1.1
Phiên Bản Facebook SDK : 4.0.0

Phần I : Cài Đặt Thư Viện

Bước 1 : 
Trước hết bạn vào trang
https://developers.facebook.com/docs/android/getting-started/
tìm cho mình cái dòng . . . .

4. Add this to Module-level /app/build.gradle before dependencies:
repositories {
    mavenCentral() 
}
5. Add the compile dependency with the latest version of the Facebook SDK in the build.gradle file:
dependencies { 
  compile 'com.facebook.android:facebook-android-sdk:4.1.0'
}

Bước 2 : 
vào trong cái app/build.gradle của bạn
Điền vô cái cái đoạn mà người ta yêu cầu điền
rồi nhấn sync now . . . .


Đợi build hoàn tất là bạn có thể sử dụng được facebook SDK








Phần II : Sử dụng thư viện 

Trong phần này mình sẽ hướng dẫn tạo 1 màn hình login đơn giản nhớ thực hiện theo từng bước
Trước hết bạn nên vào trang này để đọc trước
https://developers.facebook.com/docs/facebook-login/android/v2.2


Bước 1 : Tạo project mới   

Bạn tạo 1 project mới với Fragment 



Bước 2 : Thêm Button Login  
Vào trong cái layout fragment_main.xml
thêm dòng này vô 
<com.facebook.login.widget.LoginButton
    android:id="@+id/login_button"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center_horizontal"
    android:layout_marginTop="30dp"
    android:layout_marginBottom="30dp" /> 

Bước 3 : Tạo Facebook App ID
Vào trang
https://developers.facebook.com/quickstarts/?platform=android
tạo 1 facebook app mới tiếp theo thì cứ chọn catalogue đại khái :v rồi next
vào trang tiếp theo

điền đủ rồi next :)
đến bước tiếp theo bạn cần lấy KeyHash cho developer
cách lấy
vào thư mục chứa keytool  thường ở : C:\Program Files\Java\jdk1.7.0_75\bin  nhấp vô cái đường dẫn : gõ cmd
copy cái này vô keytool -exportcert -alias androiddebugkey -keystore %HOMEPATH%/.android/debug.keystore | "C:\openSSL\bin\openssl.exe" sha1 -binary | "C:\openSSL\bin\openssl.exe" base64 trong đó C:\openSSL\bin\openssl.exe là đường dẫn cái openssl của bạn không có thì lên mạng down về 
rồi next thế là xong bước Keyhash
Bước 4 : Thêm APP ID 

https://developers.facebook.com/apps/

Xem cái app ID của bạn là gì thì copy lại 
rồi vào trong cái res/values/string.xml điền thêm dòng này vô
<string name="facebook_app_id">APP ID </string> 
trong đó APP ID là cái ID của bạn copy vô 
Bước 5 : Thêm 1 số dòng quan trọng trong AndroidManifest.xml Bạn thêm vào 

<uses-permission android:name="android.permission.INTERNET" /> 
<application  .....
<meta-data    
android:name="com.facebook.sdk.ApplicationId"    
android:value="@string/facebook_app_id" />
<activity    
android:name="com.facebook.FacebookActivity"    
android:theme="@android:style/Theme.Translucent.NoTitleBar"    
android:configChanges="keyboard|keyboardHidden|screenLayout|screenSize|orientation"    
android:label="@string/app_name" />
</application>
Bước 6 : Viết Code Các bạn tham khảo thêm tại để hiểu rõ hơn từng hàm họ viết rất dễ hiểu 
https://developers.facebook.com/docs/facebook-login/android/v2.3
còn code thì mình có để link phía dưới bạn có thể copy vào và chạy nhớ thay đổi APP ID

À cần thêm 1 cái KeyHash cho app bạn có thể dùng hàm sau để in nó ra 
public void printKeyHash() {
    try {
        PackageInfo info = getPackageManager().getPackageInfo("com.xinhtuoivn.myapplication", PackageManager.GET_SIGNATURES);
        for (Signature signature : info.signatures) {
            MessageDigest md = MessageDigest.getInstance("SHA");
            md.update(signature.toByteArray());
            Log.v("KeyHash", Base64.encodeToString(md.digest(), Base64.DEFAULT));
        }
    } catch (PackageManager.NameNotFoundException e) {

    } catch (NoSuchAlgorithmException e) {

    }
}
trong MainActivity gọi cái đó hàm đó ra trong onCreate ra thay cái com.xinhtuoivn.myapplication bằng packet của bạn
nó sẽ in ra cái KeyHash cho bạn như thế này
05-19 15:26:45.314    3488-3488/com.xinhtuoivn.myapplication V/KeyHash﹕ mY4wphlhNK4ZtQO9xBT8Dttggdo=
copy cái keyhash đó vô 
rồi vô https://developers.facebook.com/apps/
chọn app của bạn rồi vào mục setting app
điền cái đó vô platform android giống ntn :v
CODE MẪU https://drive.google.com/file/d/0BwDf1R2iXx6ORUtSbU1IU1dMUGM

No comments:

Powered by Blogger.