الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

Android | تسجيل الدخول من خلال facebook

بدأه ameral في 18 مارس 2014 · 1 رد · 1,823 مشاهدة · في Android
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع
 

بسم الله الرحمن الرحيم  و الصلاه و السلام علي اشرف المرسلين

هذا الموضوع التعليمي هو حول دمج الفيسبوك في  تطبيق الاندرويد الخاص بك. وانا ذاهب الى شرح الخطوات المختلفة مثل توليد توقيع التطبيق الخاص بك، و تسجيل تطبيق الفيسبوك و  خطوات تحميله. هنا وثائق رسمية من الفيسبوك في كيفية التعامل مع بيئة android .

توليد كود التوقيع  لتطبيقك  لربطه بإعدادات الفيسبوك
معرفة مسار  ملف keytool     و تجده  في  مسار Java Jdk   و غالبا ما تجده في المسار 
C:\Program Files (x86)\Java\jre7\bin
و نقوم بالوصول لهذا المسار من خلال  cmd 
1.png
 
 
معرفة مسار الملف debug.keystore     غالبا تجده في المسار التالي C:\Users\mohammed\.android\debug.keystore
 
نقوم بادخال النص التالي علي  شاشة cmd   بمسار keytool
keytool -exportcert -alias
androiddebugkey -keystore " C:\Users\mohammed\.android\debug.keystore "
| openssl sha1 -binary | openssl base64
 
 نقوم بتعديل مسار ملف debug.keystore الموجود بين علامتان التنصيص  في حال كان هناك اختلاف في مسارdebug.keystore لديكم حسب مساره   
 
2.png
 
 
 
 
 
سيطلب منكم ادخال كلمة مرور  " اكتب أي كلمة مرور " مع العلم ان كلمة المرور هذه هي التي  ستكنبها في حال قمت بعملexport  للتطبيق   لاحقا    حتي  يعمل التطبيق  
و بعد ذالك سيعطيك كود توقيع   مشفر  نقوم بنسخة  لاننا سنحتاجه  لا حقا 
 
3.png
 
 
 
 
تسجيل تطبيقك في تطبيقات الFacebook
 
بعد توليد توقيع التطبيق الخاص بك بنجاح، تسجيل تطبيق الفيسبوك الخاص بك عن طريق الذهاب الى إنشاء تطبيق فيسبوك جديد وملء كافة المعلومات المطلوبة. وحدد ملكية  التطبيق وإعطاء hashkey الخاص "كود التوقيع " والتي تم إنشاؤها مسبقا باستخدام keytool.
 
نتابع الصور 
4.png

5.png

6.png

7.png

8.png

في الصورة التالية نقوم بإدخال كود التوقيع الذي حصلنا عليه مسبقا
 
9.png

في الصورة التالية يظهر لك ID  الخاص بتطبيقك  و هو الذي سنستخدمه في البرمجة ان شاء الله
10.png
 
 
برمجة التطبيق
الان نتوجه لبرمجة تطبيق الاندرويد 
نقوم بعمل تطبيق جديد  
و نقوم بتحميل مكتبات facebook SDK من الرابط  https://developers.facebook.com/docs/android/
 او يمكنك الحصول عليها من المرفقات 
ثم نقوم إستيرادها الي محرر Eclipse      
File ⇒ Import ⇒ Existing Projects into Workspace 
ثم نختار المجلد الخاص بــfacebook SDK  
--------------------
ثم نقوم بإضافة  facebook SDK   كمكتبة  الي التطبيق الخاص بك  حتي تستطيع استخدام classesو الاصناف الموجودة بداخله
 

اهم الدوال تم استخدامها 
 
الربط بتطبيق الفيس بوك الخاص بك من خلا رقم ID 
// Your Facebook APP ID
private static String APP_ID = "533021960149687";

private Facebook facebook = new Facebook(APP_ID);
دالة تسجيل الدخول للفيس بوك 
public void loginToFacebook() {
mPrefs = getPreferences(MODE_PRIVATE);
String access_token = mPrefs.getString("access_token", null);
long expires = mPrefs.getLong("access_expires", 0);

if (access_token != null) {
facebook.setAccessToken(access_token);
}

if (expires != 0) {
facebook.setAccessExpires(expires);
}

if (!facebook.isSessionValid()) {
facebook.authorize(this,
new String[] { "email", "publish_stream" },
new DialogListener() {

@Override
public void onCancel() {
// Function to handle cancel event
}

@Override
public void onComplete(Bundle values) {
// Function to handle complete event
// Edit Preferences and update facebook acess_token
SharedPreferences.Editor editor = mPrefs.edit();
editor.putString("access_token",
facebook.getAccessToken());
editor.putLong("access_expires",
facebook.getAccessExpires());
editor.commit();
}

@Override
public void onError(DialogError error) {
// Function to handle error

}

@Override
public void onFacebookError(FacebookError fberror) {
// Function to handle Facebook errors

}

});
}
}
دالة عرض المعلومات الخاصة بالحساب مثل الاسم و الايميل علي شكل رسالة 
public void getProfileInformation() {
mAsyncRunner.request("me", new RequestListener() {
@Override
public void onComplete(String response, Object state) {
Log.d("Profile", response);
String json = response;
try {
JSONObject profile = new JSONObject(json);
// getting name of the user
String name = profile.getString("name");
// getting email of the user
String email = profile.getString("email");

runOnUiThread(new Runnable() {

@Override
public void run() {
Toast.makeText(getApplicationContext(), "Name: " + name + "\nEmail: " + email, Toast.LENGTH_LONG).show();
}

});

} catch (JSONException e) {
e.printStackTrace();
}
}

@Override
public void onIOException(IOException e, Object state) {
}

@Override
public void onFileNotFoundException(FileNotFoundException e,
Object state) {
}

@Override
public void onMalformedURLException(MalformedURLException e,
Object state) {
}

@Override
public void onFacebookError(FacebookError e, Object state) {
}
});
}

التحميل نسخة الكود و مكتبات  facebook     كلمة المرور   : www.androidarby.tk                                                  

 

 

منقول  لنشر و زيادة و اثراء المحتوي العربي البرمجي  في مجال الاندرويد 

#2

بارك الله فيك

مواضيع مشابهة