فهرست آموزش برنامه نویسی اندروید

کامل سازی فیس بوک

۱۳۹۸/۰۸/۲۳ ۳۶

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

  •  Facebook SDK
  •  Intent Share

کامل کردن Facebook SDK

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

تولید مشخصه های برنامه

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

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

 

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

 

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

Android Facebook Tutorial

ثبت برنامه

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

Android Facebook Tutorial

اکنون وارد برنامه ی داخلی اندروید شده، اطلاعات مربوط به پروژه و نام گروه را پر کرده و آنچه را که در مرحله اول کپی کرده بودید در اینجا پیست کنید. همان طور که در تصویر نشان داده شده است .

Android Facebook Tutorial

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

Android Facebook Tutorial

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

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

برنامه ورود به فیس بوک ایجاد شده

زمانی که همه چیز کامل باشد، می توانید نمونه هایی را اجرا کنید که با 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 و رویدادهای مقیاس گذاری اخیر را بازمی گرداند.
۵ putExtra(String name, int value) این روش داده های گسترده به intent اضافه می کند.
۶ toString() این روش رشته ای شامل یک توصیف واضح و خوانا از این آبجکت را باز می گرداند.

مثال

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

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

مرحله توضیحات
۱ برای ایجاد یک برنامه ی اندروید از Eclipse IDE استفاده خواهید کرد و آن را با عنوان IntentShare تحت بسته com.example. intentShare نام گذاری کنید.
۲ فایل src/MainActivity.java را برای افزودن کد لازم تغییر دهید.
۳ res/layout/activity_main را برای افزودن مولفه های XML تغییر هید.
۴ res/values/string.xml را برای افزودن مولفه های رشته ی لازم تغییر دهید.
۵ برنامه را اجرا کرده و یک دستگاه اجرایی اندروید انتخاب کنید و برنامه را روی آن نصب کنید، سپس نتایج را بررسی کنید.

در زیر محتوای تغییر یافته فایل فعالیت اصلی را مشاهده می کنید.

 

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>

 

اجازه بدهید برنامه ی IntentShare را اجرا کنیم. فرض می کنیم که دستگاه موبایل اندروید خود را به کامپیوتر متصل کرده اید. برای اجرای برنامه از Eclipse، یکی ازفایل های فعالیت پروژه را باز کرده و روی آیکن RunEclipse Run Iconاز تولبار کلیک کنید. قبل از شروع برنامه ی شما، Eclipse پنجره ی زیر را برای انتخاب گزینه ی محل اجرای برنامه ی اندرویدتان، نمایش خواهد داد.

Android facebook Tutorial

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

Android facebook Tutorial

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

Android facebook Tutorial

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

Android facebook Tutorial

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

آموزش کامل سازی فیس بوک

 

 

دانشجویار نماد اعتماد به دانشجویار مجوز نشر دیجیتال لوگو شرکت به پرداخت ملت logo-samandehi مجوز سازمان فنی حرفه ای کشور