بسم الله الرحمن الرحيم
درس اليوم للمتقدمين, كيفية إضافة زر أعجبني ( لايك ) للصفحة الفيس بوك في تطبيق اندرويد برمجياً
أصدقائي الدرس سهل, ولكن قصدت للمتقدمين أي يستطعيوا فهمه والتعديل عليه بشكل سلس وسهل, كما يناسب الحاجة. الدرس جداً مهم في نشر صفحتك في تطبيقاتك, بمجرد ضغط زر أعجبني .. يتم الأعجاب بالصفحة من حساب المستخدم .
الدرس سهل لأنه يعتمد كلياً على باكيج Facebook Android SDK .
المتطلبات الأساسية لكل درس برمجي في الاندرويد يتعلق بشبكة الفيس بوك :
* حزمة Facebook Android SDK وتثبيتها في تطبيقك. للتحميل اضغط هنا
* تطبيق في موقع مطورين فيس بوك . لإنشاء تطبيق اضغط هنا
بعد إنشاء تطبيق وتحميل حزم Facebook Android SDK .. نأتي لوضع الحزمة في تطبيقك , بعد تحميل الحزمة يظهر لك ملف facebook-android-sdk-3.23.0 حسب النسخة التي حملتها .. قم بنقل هذا الملف ( صيغته zip ) إلى ملفات تطبيقك .. في المسار \app\libs .
ثم من داخل اندرويد ستوديو أفتح ملف build.gradle و في أسفله ضع السطر التالي :
compile 'com.facebook.android:facebook-android-sdk:3.23.0'
حسب رقم النسخة التي لديك.
الان تم اتصال تطبيقك بالحزمة, بعد ذلك نضيف عنصر زر لايك في المكان الذي نريد في ملفات التصميم Layout.
كود عنصر زر أعجبني:
<com.facebook.widget.LikeView android:id="@+id/like_view" android:layout_width="250dp" android:layout_height="wrap_content" />
بعد ذلك نضيف في ملف strings.xml هذا السطر :
<string name="app_id">ضع هنا رقم اي دي للتطبيق الذي أنشائته في الفيس بوك</string>
ونضيف سطر صلاحيات الاتصال بالانترنت في ملف AndroidManifest.xml :
<uses-permission android:name="android.permission.INTERNET" />
ثم نضيف ميتا لاستدعاء com.facebook.sdk.ApplicationId في ملف AndroidManifest.xml :
<meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/app_id" />
والآن لنضع الكود البرمجي في ملف الجافا ( الاكتفتي ) : سوف أضعه كامل لتفهمه بشكل أكبر ..
package com.andrody.first_app; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import com.facebook.Settings; import com.facebook.widget.LikeView; public class MainActivity extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // تجهيز الفيس بوك لتطبيقك Settings.sdkInitialize(this); // الوصول إلى عنصر زر اعجبني LikeView likeView = (LikeView) findViewById(R.id.like_view); // رابط الصفحة او الصورة او نص للإعجاب بها ^^ likeView.setObjectId("https://www.facebook.com/andrody2015"); } @Override public void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); LikeView.handleOnActivityResult(this, requestCode, resultCode, data); } }
هكذا نكون قد انتهينا من برمجة الزر .. تقريباً انتا خزنت ملفات كاملة لتطبيق الفيس بوك على جهازك .. يعني لو لم يكن لديك تطبيق الفيس بوك على جوالك .. وضغطت زر اعجبني . سوف تظهر لك نافذة لتدخل فيها اسم وكلمة المرور لحسابك وبهكذا جهازك يتصل بالفيس بوك أي .. اي اشعارات او رسائل تصلك الى حسابك سوف يأتي لك اشعار على جهازك دون وجود تطبيق فيس بوك .. وفي حال لديك تطبيقات عديدة تستخدم عناصر للفيس بوك لن تحتاج إلى تسجيل الدخول مرة أخرى .. وهذه أسلوب رائع من الفيس بوك ^__^.
معاينة من جهازي لدرس اليوم :
انتظرونا بكل جديد ومفيد وحصري .. والسلام عليكم 🙂
لتحميل التدوينة في كتاب إلكتروني Download pdf : https://andrody.com/?attachment_id=365
رائع يا اخي شكرا لك
العفو أخي .. بالخدمة 🙂
السلام عليكم
الرجاء التوضيح أين يوضع سطر الكومبايل في الملف build.gradle
وضعته كما الشكل :
apply plugin: ‘com.android.application’
android {
compileSdkVersion 21
buildToolsVersion “22.0.0”
defaultConfig {
applicationId “com.luna.firas.facebooklike”
minSdkVersion 15
targetSdkVersion 21
versionCode 1
versionName “1.0”
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile(‘proguard-android.txt’), ‘proguard-rules.pro’
}
}
}
dependencies {
compile fileTree(dir: ‘libs’, include: [‘*.jar’])
compile ‘com.android.support:appcompat-v7:22.0.0’
compile ‘com.facebook.android:facebook-android-sdk:4.0.1’
}
و ظهر خطأ :
Error:(25, 13) Failed to resolve: com.facebook.android:facebook-android-sdk:4.0.1
حسب موقع الفيس بوك
https://developers.facebook.com/docs/android/getting-started/#androidstudio
يوجد أيضا
repositories {
mavenCentral()
}
فهل هي ضرورية أم لا
و جربت مع وجودها و عدمه نفس الخطأ السابق
و شكرا
وعليكم السلام اخي ..
وضعك له صحيح .. لكن المشكلة هي إن الطريقة في الشرح للإصدار الثالث .. وانت حملت الاصدار الرابع ..
ملاحظة : دائماً في اغلب التطبيقات او الاصدارات لكل البرامج إلخ .. المشهورة طبعاً تتبع هذا النظام ..
لو رأيت مثلاً اصدار واتس اب 2.50 و 2.70 .. يعني التغيير الذي حدث او التحديث يشمل اصلاحات او تغيرات بسيطة ..
اما لو رايت اصدار 3.00 فهو إذا يحتوي على تحديثات مهمة او تغيير كامل .. تصميم استايل اضافة خاصية إلخ .. اي تحديث له قيمته ..
لذلك طريقة الاصدار الرابع اصبحت مختلفة للفيس بوك .. وان شاء الله حال تفرغي اقوم بشرحها ..
مع العلم شيء فشيء تصبح أسهل وأسهل لكي تسهل عملية دمج ادواتها مع التطبيقات .. والفائدة لها 🙂
لقد واجهت مشكل وهو في الاخير عند وضع الكود في Mainactivity ولا اعرف السبب هل من حل و جزاكم الله خيرا