Tích hợp mạng xã hội - Tạo app Facebook
Khóa học lập trình Android cơ bản

Danh sách bài học
Tích hợp mạng xã hội - Tạo app Facebook
Dẫn nhập
Ở các bài học trước, chúng ta đã cùng nhau TÌM HIỂU VỀ SQLITE, một trong những phương thức lưu trữ dữ liệu trong hệ điều hành Android. Cũng như viết một ỨNG DỤNG để tìm hiểu những gì SQLite có thể làm.
Ở bài học này, chúng ta cùng tìm hiểu về cách tích hợp mạng xã hội vào ứng dụng Android, cụ thể ở đây là Facebook. Có nhiều lý do để chúng ta làm việc này, mời các bạn đọc tiếp sẽ rõ.
Nội dung
Để đọc hiểu bài này tốt nhất các bạn nên có kiến thức cơ bản về các phần:
- CẤU TRÚC CƠ BẢN CỦA MỘT CHƯƠNG TRÌNH ANDROID.
- Có một tài khoản Facebook và cơ chế xác thực qua “app” của Facebook.
Trong bài học này, chúng ta sẽ cùng tìm hiểu các vấn đề:
- Tạo key debug, tạo app Facebook.
Tạo key debug, tạo app Facebook
Từ thời kỳ đầu của Android, thật ra cái app Facebook là một app hybrid viết bằng HTML5. Sau đó người ta nhận thấy rằng trải nghiệm người dùng bằng hybrid thời đó quá tệ, nên Facebook đã chuyển dần sang Native, cũng như cung cấp một bộ SDK tử tế cho các lập trình viên thuần Android.
Vậy việc này có tác dụng gì?
-
Lấy thông tin của người dùng Facebook một cách hợp lệ.
- Sử dụng các thông tin lấy được để phục vụ cho app (như login / xác thực, phân tích,…).
Kỳ này chúng ta thực hành là chính, và có hơi khác một chút so với các ví dụ khác. Chúng ta không code ngay, mà cần đăng ký “app” – một kiểu giấy phép đăng ký cài đặt ứng dụng Facebook trước.
Bước 1: Các bạn truy cập vào trang:
Giao diện của trang kiểu kiểu như sau:
- Đưa chuột lên avatar của bạn, sau đó nhấn Add a new app như hình trên.
Nếu bạn chưa từng làm việc với Facebook Developer, thì chắc là sau khi đăng nhập, bạn phải đăng ký tài khoản Facebook developer. Lúc đó trang web sẽ có dạng như này:
Click vào nút Register và chuyển công tắc sang Yes > Register:
Sau đó Facebook sẽ hiện thông báo:
You have successfully registered as a Facebook Developer. You can now add Facebook into your app or website.
Và thế là sẵn sàng để tạo App, như hình đầu tiên.
Bước 2: Sau khi nhấn nút Add a new app thì sẽ có một cửa sổ như thế này:
- Display Name: Tên app của bạn.
- Contact Email: Email liên lạc với chủ app (là bạn).
- Category: Danh mục, phải chọn một cái, ở đây mình chọn tạm là “Education” (giáo dục).
Sau đó nhấn Create App ID. Trình duyệt sẽ chuyển sang trang như hình, nhấn vào nút Get Started ở phần Facebook Login:
Hoặc trong trường hợp không hiện ra mục như ở trên, các bạn nhấn vào mục Dashboard ở cột trái > Chọn Choose Platform:
Chọn platform là Android như hình:
Trình duyệt sẽ hiện như này. Thật ra bây giờ chỉ cần làm theo hướng dẫn, nhưng mình sẽ giải thích từng bước nhé. Giữ nguyên trang này, chúng ta sẽ làm theo các bước hướng dẫn trong đó.
Bước 3: Tạo project Android có tên là FacebookLoginExample:
Thêm dòng mavenCentral() ở chỗ bôi màu trong file build.gradle ở ngoài:
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
jcenter()
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.2.2'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
jcenter()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
Sau đó trong file app/build.gradle, các bạn thêm dependency cho nó, như này:
apply plugin: 'com.android.application'
android {
compileSdkVersion 24
buildToolsVersion "25.0.0"
defaultConfig {
applicationId "com.howkteam.facebookloginexample"
minSdkVersion 15
targetSdkVersion 24
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'com.android.support:appcompat-v7:24.2.1'
compile 'com.facebook.android:facebook-android-sdk:[4,5)'
testCompile 'junit:junit:4.12'
}
Rồi chọn Sync Now hoặc File > Synchronize để đồng bộ dependency.
Lưu ý là minSdkVersion phải là 15 trở lên.
Bước 4: Chỉnh sửa file /app/src/main/res/values/strings.xml thành như sau. Thêm dòng sau:
<resources>
<string name="app_name">FacebookLoginExample</string>
<string name="facebook_app_id">APP_ID</string>
</resources>
- Với APP_ID là cái số hiệu App ở hình cuối bước 2.
Bước 5: Chỉnh sửa file Android Manifest: Thêm permission INTERNET và dòng meta như sau:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.howkteam.facebookloginexample">
<uses-permission android:name="android.permission.INTERNET"/>
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/facebook_app_id"/>
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
</application>
</manifest>
Cụ thể tại 2 vị trí
<uses-permission android:name="android.permission.INTERNET"/>
<meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/facebook_app_id"/>
Bước 6: Quay lại trang setup Facebook app trên trình duyệt, kéo xuống dưới cùng, điền thông tin như hình:
Với dòng package name là tên package của app viết theo dạng domain ngược, các bạn xem tên package này trong file AndroidManifest.xml là thấy. Trong ví dụ này thì nó nằm ở:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.howkteam.facebookloginexample">
- Sau đó nhấn Next. Chọn Use Package Name nếu được hỏi:
Bước 7: Lúc này bạn cần tìm file keytool.exe của Java. Tùy theo phiên bản Java cài đặt mà nó nằm ở thư mục khác nhau trên máy bạn, nhưng đại khái đường dẫn dạng như này:
- Gõ “cmd” vào thanh địa chỉ:
Gõ lệnh sau vào cửa sổ dòng lệnh:
keytool -exportcert -alias androiddebugkey -keystore %HOMEPATH%\.android\debug.keystore | openssl sha1 -binary | openssl base64
keytool -exportcert -alias androiddebugkey -keystore "D:\SSL.android\debug.keystore" | "D:\SSL\bin \openssl.exe" sha1 -binary | "D:\SSL\bin\openssl.exe" base64
“D:\SSL” là đường dẫn của OpenSSL được download và giải nén ra. Link download:
https://code.google.com/archive/p/openssl-for-windows/downloads
- Chương trình sẽ hỏi bạn password, password là android (viết thường).
Lúc này ta sẽ được một đoạn mã ngộ ngộ dạng như:
ZS2mYg5y732HzmnGqveAA5sAJIg=
Copy đoạn mã trên vào ô Key Hashes:
Nhấn Next, và thế là xong, chúng ta đã hoàn thành được phần tạo ứng dụng Facebook và Sẵn sàng tích hợp vào ứng dụng:
Kết luận
Qua bài này chúng ta đã nắm được cách khởi tạo app Facebook và phương thức cài đặt dependency Facebook SDK vào ứng dụng.
Bài sau chúng ta sẽ tìm hiểu về CÁCH CÀI ĐẶT FACEBOOK LOGIN TỪ FACEBOOK SDK.
Cảm ơn các bạn đã theo dõi bài viết. Hãy để lại bình luận hoặc góp ý của mình để phát triển bài viết tốt hơn. Đừng quên “Luyện tập – Thử thách – Không ngại khó”.
Tải xuống
Tài liệu
Nhằm phục vụ mục đích học tập Offline của cộng đồng, Kteam hỗ trợ tính năng lưu trữ nội dung bài học Tích hợp mạng xã hội - Tạo app Facebook dưới dạng file PDF trong link bên dưới.
Ngoài ra, bạn cũng có thể tìm thấy các tài liệu được đóng góp từ cộng đồng ở mục TÀI LIỆU trên thư viện Howkteam.com
Đừng quên like và share để ủng hộ Kteam và tác giả nhé!

Thảo luận
Nếu bạn có bất kỳ khó khăn hay thắc mắc gì về khóa học, đừng ngần ngại đặt câu hỏi trong phần bên dưới hoặc trong mục HỎI & ĐÁP trên thư viện Howkteam.com để nhận được sự hỗ trợ từ cộng đồng.
Nội dung bài viết
Tác giả/Dịch giả
Khóa học
Khóa học lập trình Android cơ bản
Serial tutorial hướng dẫn lập trình Android cơ bản
Đánh giá
Bình luận

Để bình luận, bạn cần đăng nhập bằng tài khoản Howkteam.
Đăng nhập