شروع کنیم!

FALSE

در صورتی که حساب کاربری در بفرست ندارید، ثبت نام کنید.
سپس با حساب کاربری خود وارد بفرست شوید.

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

۱. ابتدا بفرست را به پروژه خود اضافه کنید.
افزودن SDK به پروژه در Android Studio

بسته توسعه نرم افزار بفرست بر روی JCenter منتشر شده است. بنابراین کافی است بفرست را در لیست dependency های اپلیکیشن خود در فایل app's build.gradle قرار دهید.

dependencies {
  // other libraries
  compile 'rest.bef:befrest:2.0.1'
}
افزودن SDK به پروژه در Eclipse

ابتدا فایل jar بفرست را از اینجا دانلود کرده و در پوشه libraries پروژه خود قرار دهید. سپس سرویس و broadcastReceiver های داخلی بفرست را به فایل AndroidManifest درست قبل از تگ پایانی </application> اضافه کنید.

<service android:name="rest.bef.PushService" />

<receiver
   android:name="rest.bef.BefrestConnectivityChangeReceiver"
   android:enabled="false">
   <intent-filter>
       <action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
   </intent-filter>
</receiver>

همچنین permission های زیر را قبل از تگ آغازی <application> اضافه کنید.

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />

۲. سپس دو کلاس زیر را به پروژه اضافه کنید.

public class PushReceiver extends BefrestPushReceiver {
   @Override
   public void onPushReceived(Context context, BefrestMessage[] messages) {
        NotificationCompat.Builder builder = new NotificationCompat.Builder(context)
            .setSmallIcon(R.mipmap.ic_launcher) //replace with your app icon if it is not correct
            .setTicker("پیام از بفرست!")
            .setContentText(messages[0].getData())
            .setAutoCancel(true);

        NotificationManager notificationManager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
        notificationManager.notify(0, builder.build());
   }
}

چنانچه پیش از این، کلاس Application را extend کرده‌اید کافی است بفرست را مطابق کد بالا در onCreate این کلاس راه اندازی کنید.

۳. در فایل AndroidManifest تکه کد زیر را بلافاصله قبل از تگ شروع application اضافه کنید.

<!--important! change 'YOUR_APPLICATION_PACKAGE_NAME' to your application package name in the following two lines -->
<permission android:protectionLevel="signature" android:name="YOUR_APPLICATION_PACKAGE_NAME.permission.PUSH_SERVICE" />
<uses-permission android:name="YOUR_APPLICATION_PACKAGE_NAME.permission.PUSH_SERVICE" />

فراموش نکنید که عبارت YOUR_APPLICATION_PACKAGE_NAME را که در تکه کد بالا دو بار تکرار شده است با نام پکیج برنامه خود جایگزین کنید!
سپس تکه کد زیر را درست قبل از تگ پایانی </application> قرار دهید:

<receiver
   android:name=".PushReceiver"
   android:exported="false">
   <intent-filter>
        <action android:name="rest.bef.broadcasts.ACTION_BEFREST_PUSH"/>
   </intent-filter>
</receiver>

و در پایان اگر پارامتر android.name از تگ <application> برابر با اسم کلاس Application شما نیست، آن را مطابق کد زیر تغییر دهید:

<application
   android:name=".BefrestApplication"
  /* other properties */ />

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

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