مشاوره رایگان
دریافت لینک های دانلود دریافت پستی درب منزل مبلغ کل: تومان
جهت دریافت کد تخفیف به کانال تلگرام مراجعه و یا با پشتیبان آنلاین هماهنگ نمایید

اتصال فیسبوک به اپلیکیشن در برنامه نویسی اندروید


اندروید به شما اجازه می دهد تا به فیس بوک متصل شده و هر گونه اطلاعات یا آپدیتی را روی فیس بوک به اشتراک بگذارید.
این مقاله در مورد اتصال فیس بوک به اپلیکیشن ، به شما توضیح خواهد داد .

دو روش وجود دارد ، این دو روش عبارتند از :

  •  Facebook SDK
  •  Intent Share

 Facebook SDK :

این اولین روش برای اتصال به فیس بوک می باشد. شما باید اپلیکیشن خود را ثبت کرده و سپس چند Application id دریافت کنید و سپس Facebook SDK را دانلود کنید و آن را به پروژه ی خود اضافه کنید. مراحل مربوط به آن در زیر ارائه شده اند :

تولید مشخصه های اپلیکیشن :

شما باید یک مشخصه ی اصلی تولید کنید، اما قبل از تولید آن مطمئن شوید که SSL را نصب کرده اید، در غیر این صورت ابتدا باید SSL را دانلود کنید.

اکنون command prompt را باز کرده و دوباره به سمت فولدر java jre بروید. زمانی که به این فولدر می رسید ، این فرمان را به طور دقیق تایپ کنید. شما باید مسیر را با مسیر keystore در داخل کاماهای معکوس جایگزین کنید.
مسیر keystore را می توانید در eclipse با انتخاب تب window و سپس انتخاب مراجع و سپس انتخاب گزینه ی build زبر android در قسمت چپ ، پیدا کنید.

keytool -exportcert -alias androiddebugkey -keystore "your path" 
   | openssl sha1 -binary | openssl base64

زمانی که این فرمان را وارد می کنید تا مرحله ی پسورد پیش خواهید رفت.کلمه ی Android را به عنوان پسورد وارد کنید و سپس کلیدی که به شما داده می شود را کپی کنید، که در تصویر زیر ارائه شده است  :

ثبت برنامه (Registering your application) :

اکنون یک اپلیکیشن فیس بوک جدید در developers.facebook.com/apps وارد کنید و تمام اطلاعات را وارد کنید که در تصویر زیر نشان داده شده است .

اکنون وارد اپلیکیشن داخلی اندروید (native android app) شده ، اطلاعات مربوط به پروژه و نام گروه را پر کرده و آنچه را که در مرحله ی اول کپی کرده بودید در اینجا پیست کنید.
تصویر زیر را در نظر بگیرید :

اگر همه چیز به خوبی پیش برود، یک application ID با رمز دریافت خواهید کرد، تنها کافیست این id را کپی کرده و در جایی ذخیره کنید.
در تصویر زیر شما می توانید مشاهده کنید :

دانلود SDK و کامل کردن آن:

Facebook SDK را دانلود کرده و آن را وارد eclipse کنید. زمانی که وارد شدید ، روی پروژه ی فیس بوک خود راست کلیک کنید و روی دکمه ی add کلیک کنید ، facebook SDK را به عنوان پروژه انتخاب کرده و روی OK کلیک کنید.

ایجاد اپلیکیشن ورود به فیس بوک (Creating facebook login application)  :

زمانی که همه چیز کامل باشد، می توانید نمونه هایی را اجرا کنید که با SDK می آیند و یا خودتان اپلیکیشنی  ایجاد کنید.
برای ورود لازم است که متد openActiveSession را فراخوانده و callback آن را اجرا کنید.
ترکیب آن در زیر ارائه شده است :

 

// start Facebook Login
Session.openActiveSession(this, true, new Session.StatusCallback() {
   
   // callback when session changes state
   public void call(Session session, SessionState state, Exception exception) {
      if (session.isOpened()) {
         // make request to;2 the /me API
         Request.executeMeRequestAsync(session, new Request.GraphUserCallback() {
            
            // callback after Graph API response with user object
            @Override
            public void onCompleted(GraphUser user, Response response) {
               if (user != null) {
                  TextView welcome = (TextView) findViewById(R.id.welcome);
                  welcome.setText("Hello " + user.getName() + "!");
               }
            }
         });
      }
   }
}

 

اشتراک گذاری Intent :

اشتراک گذاری Intent برای اشتراک گذاری داده بین اپلیکیشن ها استفاده می شود.
در این استراتژی ، ما به موضوع SDK نمی پردازیم بلکه به برنامه ی فیس بوک اجازه می دهیم تا به آن رسیدگی کند. به سادگی برنامه ی فیس بوک را فرا خوانده و داده را وارد می کنیم تا به اشتراک بگذارد. از این طریق می توان چیزی روی فیس بوک به اشتراک گذاشت.

اندروید کتابخانه ی Intent ارائه می دهد تا داده ها بین اکتیویتی ها و اپلیکیشن ها به اشتراک گذاشته شوند. برای استفاده از آن به عنوان share intent باید نوع share intent را برای ACTION_SEND مشخص کنیم.
سینتکس آن در زیر ارائه شده است :

Intent shareIntent = new Intent();
shareIntent.setAction(Intent.ACTION_SEND);

کار دیگری که لازم است انجام دهید ، تعریف نوع داده برای انتقال می باشد که میتوانید  پس از آن داده را منتقل کنید.
سینتکس آن مانند زیر می باشد.

shareIntent.setType("text/plain");
shareIntent.putExtra(Intent.EXTRA_TEXT, "Hello, from tutorialspoint");
startActivity(Intent.createChooser(shareIntent, "Share your thoughts"));

علاوه بر این متد ها، متد های دیگری برای رسیدگی به intent وجود دارند که در زیر ارائه شده اند:

  • (addCategory(String category  : این متد یک مولفه ی جدید به intent اضافه می کند.
  • (createChooser(Intent target, CharSequence title : تابعی ساده برای ایجاد ACTION_CHOOSER Intent
  • ()getAction  : این متد اکشن کلی که باید انجام شود، مانند ACTION_VIEW را بازیابی می کند.
  • ()getCategories : این متد مجموعه ی همه ی کامپوننت های intent.nt و event های مقیاس گذاری اخیر را باز می گرداند (return می کند) .
  • (putExtra(String name, int value : این متد extended data را به intent اضافه می کند.
  • toString() این متد رشته ای (string )  شامل یک توصیف واضح و خوانا از این آبجکت را باز می گرداند (return می کند) .

 

مثال :

در اینجا مثالی را می بینید که استفاده از IntentShare را برای اشتراک گذاری اطلاعات روی فیس بوک توضیح می دهد.
این مثال یک اپلیکیشن پایه (basic application) ایجاد می کند که به شما اجازه ی به اشتراک گذاری متن روی فیس بوک را می دهد.

برای آزمایش با این مثال می توانید آن را روی یک دستگاه واقعی یا یک امولاتور اجرا کنید.

  • برای ایجاد یک برنامه ی اندروید از Android studio  تحت پکیج com.example. intentShare استفاده می کنید .
  • فایل src/MainActivity.java را برای افزودن کد لازم تغییر دهید.
  • res/layout/activity_main را برای افزودن کامپونن های XML تغییر هید.
  • برنامه را اجرا کرده و یک دستگاه اجرایی اندروید انتخاب کنید و برنامه را روی آن نصب کنید، سپس نتایج را بررسی کنید.

محتوای MainActivity.java :

package com.example.sairamkrishna.myapplication;

import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;

import android.widget.Button;
import android.widget.ImageView;

import java.io.FileNotFoundException;
import java.io.InputStream;

public class MainActivity extends AppCompatActivity {
   private ImageView img;

   protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main);

      img=(ImageView)findViewById(R.id.imageView);
      Button b1=(Button)findViewById(R.id.button);

      b1.setOnClickListener(new View.OnClickListener() {
         @Override
         public void onClick(View v) {
            Intent sharingIntent = new Intent(Intent.ACTION_SEND);
            Uri screenshotUri = Uri.parse("android.
            resource://comexample.sairamkrishna.myapplication/*");
            
            try {
               InputStream stream = getContentResolver().openInputStream(screenshotUri);
            } catch (FileNotFoundException e) {
               // TODO Auto-generated catch block
               e.printStackTrace();
            }

            sharingIntent.setType("image/jpeg");
            sharingIntent.putExtra(Intent.EXTRA_STREAM, screenshotUri);
            startActivity(Intent.createChooser(sharingIntent, "Share image using"));
         }
      });
   }
}

در زیر محتوای تغییر یافته ی xml مربوط به res/layout/activity_main.xml را مشاهده می کنید :

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 
   xmlns:android="http://schemas.android.com/apk/res/android"
   xmlns:tools="http://schemas.android.com/tools" 
   android:layout_width="match_parent"
   android:layout_height="match_parent" 
   android:paddingLeft="@dimen/activity_horizontal_margin"
   android:paddingRight="@dimen/activity_horizontal_margin"
   android:paddingTop="@dimen/activity_vertical_margin"
   android:paddingBottom="@dimen/activity_vertical_margin" 
   tools:context=".MainActivity">
   
   <TextView
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:id="@+id/textView"
      android:layout_alignParentTop="true"
      android:layout_centerHorizontal="true"
      android:textSize="30dp"
      android:text="Facebook share " />
      
   <TextView
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="Tutorials Point"
      android:id="@+id/textView2"
      android:layout_below="@+id/textView"
      android:layout_centerHorizontal="true"
      android:textSize="35dp"
      android:textColor="#ff16ff01" />
      
   <ImageView
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:id="@+id/imageView"
      android:layout_below="@+id/textView2"
      android:layout_centerHorizontal="true"
      android:src="@drawable/abc"/>
   
   <Button
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="Share"
      android:id="@+id/button"
      android:layout_marginTop="61dp"
      android:layout_below="@+id/imageView"
      android:layout_centerHorizontal="true" />
      
</RelativeLayout>

 

محتوای AndroidManifest.xml :

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
   package="com.example.sairamkrishna.myapplication" >
   <application
      android:allowBackup="true"
      android:icon="@mipmap/ic_launcher"
      android:label="@string/app_name"
      android:theme="@style/AppTheme" >
      
      <activity
         android:name=".MainActivity"
         android:label="@string/app_name" >
         
         <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
         </intent-filter>
         
      </activity>
   </application>
</manifest>

 

اجازه بدهید اپلیکیشن را اجرا کنیم. فرض می کنیم که دستگاه موبایل اندروید خود را به کامپیوتر متصل کرده اید. برای اجرای اپلیکیشن از Android studio ، یکی از فایل های اکتیویتی پروژه را باز کرده و روی آیکون Run از toolbar کلیک کنید.
قبل از شروع اپلیکیشن شما ، Android studio پنجره ی زیر را برای انتخاب گزینه ی محل اجرای برنامه ی اندرویدتان ، نمایش خواهد داد :

 

 

دستگاه موبایل خود را به عنوان یک گزینه انتخاب کرده و سپس آن را چک کنید.

سپس روی لوگو ضربه بزنید، پس از آن ارائه کنندگان اشتراک گذاری را مشاهده خواهید کرد.

 تصویر facebook را انتخاب کرده و پیامی را که می خواهید ، بنویسید.

فصلِ: 20 , تعداد قسمت ها: 238 , سطح: صفر تا صد

این فصل در یک نگاه:

فصل رایگان مربوط به مفاهیم php و api نویسی …

توضیحات کلی مجموعه: دوره متخصص اندروید کلیک سایت کامل ترین دوره جامع برنامه نویسی اندروید(حتما دمو دوره را ببینید)   چرا دوره متخصص جایگزین دوره صفرتاصد اندروید شد؟ کلیک سایت تصمیم گرفت …
فصلِ: 30 , تعداد قسمت ها: 182 , سطح: صفر تا صد

این فصل در یک نگاه:

آموزش ساخت اپلیکیشن علی بابا-آموزش کالبک ها-…

دوره "متخصص" جایگزین دوره صفرتاصد اندروید شد. برای دیدن دوره متخصص اندروید بر روی لینک زیر کلیک کنید : https://b2n.ir/d36082 چرا دوره متخصص جایگزین دوره صفرتاصد شده است؟چرا باید دوره متخص…
فصلِ: 11 , تعداد قسمت ها: 121 , سطح: صفر تا صد

این فصل در یک نگاه:

عملیات شبیه فیلتر-ساخت الرت دیالوگ وچیدمان براساس فروش-مرتب سازی-نحوه خطایابی-استفاده از bottom sheet در اندروید-سبد خری…

آموزش ساخت اپلیکیشن اندروید دیجی کالا  : ساخت برنامه اندروید یکی از پر طرفدارترین آموزش های کلیک سایت می باشد. با توجه به فراگیر شدن سیستم اندروید و آشنایی افراد با این سیستم ، برنامه های ک…
فصلِ: 3 , تعداد قسمت ها: 179 , سطح: صفر تا صد

این فصل در یک نگاه:

در این دوره آموزشی ، برنامه نویسی اندروید و ios را با استفاده از زامارین خواهیم آموخت. همچنین به صورت کاملا پروژه محور ، اپلیکیشن فروشگاهی مشابه دیجی کالا را پیاده سازی خواهیم کرد. در انته…
فصلِ: 2 , تعداد قسمت ها: 58 , سطح: صفر تا صد

این فصل در یک نگاه:

توضیحات کلی مجموعه: سرفصل های دوره آموزش ساخت اپلیکیشن فیلیمو معرفی اهداف دوره مقدمه و بررسی پیش نیازهای دوره بررسی جزئی و …
فصلِ: 1 , تعداد قسمت ها: 9 , سطح: صفر تا صد

این فصل در یک نگاه:

آموزش ساخت api key-آموزش استفاده از GPS گوشی ونمایش مکان شخص برروی نقشه-متصل کردن چند نقطه برروی نقشه با خط-رسم چند ضلعی…

حتما دمو دوره رو ببینید اولین دوره کامل کار با نقشه گوگل ومسیریابی در نقشه گوگل(این اموزش مشابه فارسی ندارد) اموزش کار با نقشه گوگل در برنامه نویسی اندروید یکی از مهم ترین مباحث هست که …
فصلِ: 1 , تعداد قسمت ها: 14 , سطح: صفر تا صد

این فصل در یک نگاه:

ساخت انواع نوتیفیکیشن ها -کار با وب سرویس پوشه-ارسال نوتیفیکیشن با سرویس پوشه-ارسال نوتیفیکیشن با one signal-اموزش کار ب…

با این مجموعه همه چیز در مورد نوتیفیکیشن و فایربیس رو خواهید اموخت یکی از مواردی که در استخدام کاربران در شرکت های برنامه نویسی بسیار موثر هست مبحث کار با firebase هست که ما دراین دوره ام…
فصلِ: 1 , تعداد قسمت ها: 16 , سطح: صفر تا صد

این فصل در یک نگاه:

لیست کردن فایل های صوتی ویدیویی گوشی-طاحی متریال وزیبا-استفاده از تب بندی-حرکت سیک بار همراه با اهنگ وزمان-ست کردن زمان …

توضیحات کلی مجموعه: اموزش ساخت یک موزیک پلیر و ویدیو پلیر ح رفه ای که کاملا کاربردی است و قابلیت نصب روی گوشی های مختلف را دارد از جمله امکانات این اپلیکیشن: لیست کردن فایل های صوتی وید…
فصلِ: 1 , تعداد قسمت ها: 61 , سطح: صفر تا صد

این فصل در یک نگاه:

اموزش ساخت اپلیکیشن کافه بازار-اشتراک گذاری اپلیکیشن-کار با رتروفیت-کاربا ران تیم پرمیشن- کار با فرگمنت ها-کار با sqlite…

دوره "متخصص" جایگزین دوره های اندروید شد. برای دیدن دوره متخصص اندروید بر روی لینک زیر کلیک کنید : https://b2n.ir/d36082 چرا دوره متخصص جایگزین دیگر دوره های اندروید شده است؟چرا باید دو…
فصلِ: 1 , تعداد قسمت ها: 9 , سطح: صفر تا صد

این فصل در یک نگاه:

پرداخت درون برنامه ای بازار-اموزش فروش سکه-اموزش فروش اشتراک-اموزش فروش نسخه پولی-اموزش چک کردن خرید کردن کاربر-اموزش کا…

دوره "متخصص" جایگزین دوره های اندروید شد. برای دیدن دوره متخصص اندروید بر روی لینک زیر کلیک کنید : https://b2n.ir/d36082 چرا دوره متخصص جایگزین دیگر دوره های اندروید شده است؟چرا باید دوره…
فصلِ: 1 , تعداد قسمت ها: 20 , سطح: صفر تا صد

این فصل در یک نگاه:

آموزش کامل پیکربندی mvp-اموزش اتصال با سرور با رتروفیت و rxjava-اموزش کار با دیتابیس-آموزش کار با bottom navigation-اموز…

دوره "متخصص" جایگزین دوره های اندروید شد. برای دیدن دوره متخصص اندروید بر روی لینک زیر کلیک کنید : https://b2n.ir/d36082 چرا دوره متخصص جایگزین دیگر دوره های اندروید شده است؟چرا باید دوره…
فصلِ: 1 , تعداد قسمت ها: 35 , سطح: متوسط

این فصل در یک نگاه:

این آموزش در یک فصل شامل 35 جلسه آموزش تصویری به همراه سورس کد ارائه شده است.…

سرفصل ها مقدمه و معرفی متد آموزشی بررسی جزئی و خلاصه موارد موردنیاز پیش از آموزش شامل: کار با ویوها،  کار با کتابخانه های مختلف و ... …
فصلِ: 1 , تعداد قسمت ها: 1 , سطح: صفر تا صد

این فصل در یک نگاه:

آموزش ارسال پیامک با سامانه مدیر پیامک-ارسال کد فعال سازی برنامه با پیامک-اعتبارسنجی کد فعال سازی-ثبت نام در اپلیکیشن با…

دوره "متخصص" جایگزین دوره های اندروید شد. برای دیدن دوره متخصص اندروید بر روی لینک زیر کلیک کنید : https://b2n.ir/d36082 چرا دوره متخصص جایگزین دیگر دوره های اندروید شده است؟چرا باید دوره…
فصلِ: 2 , تعداد قسمت ها: 19 , سطح: صفر تا صد

این فصل در یک نگاه:

آموزش ارسال توکن در اندروید -اموزش امنیت در برنامه نویسی اندروید-اموزش ارسال توکن در هدر در اندروید-اموزش ساخت token -ام…

توضیحات کلی مجموعه: دموی دوره را حتما ببینید دوره امنیت و دیزاین پترن در برنامه نویسی اندروید که شامل دو فصل هست. فصل اول شامل اموزش singletone design patern-builder design patern-command …
فصلِ: 2 , تعداد قسمت ها: 44 , سطح: صفر تا صد

این فصل در یک نگاه:

در فصل دوم این دوره بیشتر میپردازیم به کار با کتابخانه ها و موارد پیشرفته تر مانند دوربین ، ضبط صدا، دیتا بیس ، و .....…

توضیحات کلی مجموعه: سلام خدمت کلیک سایتی های عزیز مجموعه آموزشی صفر تا صد برنامه نویسی اندروید در محیط بیسیک 4 اندروید (basic 4 android) معرفی محیط بیسیک 4 اندروید محیط b4a  تحت کمپانی A…
فصلِ: 3 , تعداد قسمت ها: 61 , سطح: صفر تا صد

این فصل در یک نگاه:

فصل جدید و اپدیت های جدید-آموزش کار با برودکست ریسیور در کاتلین-آموزش چک کردن اتصال به اینترنت در کاتلین-اموزش اپلود کرد…

دوره "متخصص" جایگزین دوره های اندروید شد. برای دیدن دوره متخصص اندروید بر روی لینک زیر کلیک کنید : https://b2n.ir/d36082 چرا دوره متخصص جایگزین دیگر دوره های اندروید شده است؟چرا باید دوره…
فصلِ: 5 , تعداد قسمت ها: 21 , سطح: متوسط

این فصل در یک نگاه:

نحوه ارورگیری-رفع ایراد-رفع مشکل-اشتراک گذاری مطالب-ساخت اکتیویتی تنظیمات-اشتراک گذاری مطالب-جستجو کردن…

دوره "متخصص" جایگزین دوره های اندروید شد. برای دیدن دوره متخصص اندروید بر روی لینک زیر کلیک کنید : https://b2n.ir/d36082 چرا دوره متخصص جایگزین دیگر دوره های اندروید شده است؟چرا باید دوره…
فصلِ: 5 , تعداد قسمت ها: 128 , سطح: صفر تا صد

این فصل در یک نگاه:

پرداخت درون برنامه ای بازار با کاتلین…

دوره "متخصص" جایگزین دوره های اندروید شد. برای دیدن دوره متخصص اندروید بر روی لینک زیر کلیک کنید : https://b2n.ir/d36082 چرا دوره متخصص جایگزین دیگر دوره های اندروید شده است؟چرا باید دوره…
فصلِ: 8 , تعداد قسمت ها: 62 , سطح: صفر تا صد

این فصل در یک نگاه:

اپلود تصاویر روی سرور نود جی اس-کار با کانال در چت- ساخت کانال-ساخت گروه-تفاوت کانال و گروه-انلاین بودن-ارسال تصاویر در …

  توضیحات کلی مجموعه آموزش اندروید اپلیکیشن چت مشابه تلگرام( با استفاده از Socket IO ): دموی مجموعه را حتما ببینید دراین دوره سعی میشود بسیاری از اپشن هایی که اپلیکیشن موبوگرام داراست ر…
فصلِ: 6 , تعداد قسمت ها: 194 , سطح: صفر تا صد

این فصل در یک نگاه:

در این فصل آپدیت های مربوط به دوره را قرار میدهیم…

با سلام و خسته نباشد خدمت کلیک سایتی های عزیز در ادامه با توضیحات مختصری درمورد دوره ی react native با ما همراه باشید: React Native چیست؟ قطعا یکی از آرزوهای برنامه نویسان این میباشد که ب…

تولید شده توسط کلیک سایت

پشتیبانی آنلاین
آماده پاسخگویی هستیم
انتخاب تصویر جهت ارسال:
در حال ضبط صدا

(جهت توقف و یا لغو ضبط از دکمه های زیر استفاده کنید)

توقف و ارسال :
لغو ضبط
در حال حاضر تمامی کارشناسان آفلاین هستند. همواره می توانید با شماره تلگرام / واتساپ 09010005000 به صورت آنلاین با ما در ارتباط باشید. جهت ورود به واتساپ کلیک کنید
0 پیام جدید
پشتیبان در حال تایپ ...
ارسال تصویر ضبط صدا
0 کارشناسان آنلاین می باشند
این گفت و گو توسط پشتیبان به اتمام رسید