جستجو در انجمن

در حال نمایش نتایج برای برچسب های 'cloud messaging'.



تنظیمات بیشتر جستجو

  • جستجو بر اساس برچسب

    برچسب ها را با , از یکدیگر جدا نمایید.
  • جستجو بر اساس نویسنده

نوع محتوا


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

  • اندروید
    • ابزار های برنامه نویسی اندروید
    • آموزش برنامه نویسی اندروید
    • رفع مشکلات و سوالات
    • امنیت در اندروید
    • پروژه های اندروید
  • پشتیبانی اندروید
    • اندروید Lollipop
    • اندروید marshmallow
    • اندروید nougat
    • اندروید Oreo
  • کاتلین (Kotlin)
    • آموزش های برنامه نویسی Kotlin
    • سوالات و رفع مشکلات Kotlin
  • مباحث مرتبط با اندروید
    • ابزارها و سایتهای مفید
    • گرافیک موبایل
    • آموزش های ویدئویی
    • برنامه نویسی جاوا
  • تکنولوژی های اندروید
    • وب موبایل
    • توسعه اندروید با #C
    • توسعه اندروید با Basic4Android
  • متفرقه
    • اپلیکیش های ایرانی
    • برنامه نویسی
    • درخواست همکاری
    • مباحث متفرقه
    • مهارتهای فروش و بازاریابی
  • پشتیبانی محصولات مارکت
    • پرسش و پاسخ مرتبط با مارکت انجمن اندروید ایران
    • پشتیبانی مارکت پروژه های اندروید
    • پشتیبانی مارکت آموزش اندروید
    • پشتیبانی مارکت گرافیک موبایل
  • انجمن اندروید ایران
    • اخبار و اعلانات
    • صندوق پيشنهادات و انتقادات
    • تازه‌های دنیای کامپیوتر و فناوری
    • قوانین انجمن تخصصی اندروید ایران

دسته ها

  • پروژه اندروید
    • سورس پروژه اندروید
    • کامپوننت های اندروید
    • کتابخانه های اندروید
  • آموزش اندروید
    • فیلم آموزشی کاربردی
    • مقالات آموزشی اندروید
  • گرافیک موبایل
    • قالب طراحی اپلیکیشن
  • اپلیکیشن های اندروید
    • کاربردی
    • کسب و کار
    • آموزش
    • کتاب‌ها و منابع
    • ویدئو و رسانه
    • بازی‌

تقویم ها

  • Community Calendar

1 نتیجه پیدا شد

  1. سلام دوستان، در این بحث قراره Firebase Cloud Messaging رو آموزش بدیم. این بار ما درباره (Firebase Cloud Messaging (FCM بحث خواهیم کرد. ما از Firebase برای اضافه کردن cloud messaging در برنامه اندروید استفاده خواهیم کرد. Firebase Cloud Messing چیست؟ Firebase Cloud Messaging یک API قدرتمند است که به شما اجازه می دهد پیام ها را به صورت قابل اعتماد و مستقل از پلتفرمی که در حال توسعه است، ارسال کنید. با استفاده از FCM، توسعه دهندگان می توانند به کاربران اطلاع دهند که داده های جدید برای همگام سازی و ارسال پیام های اطلاع رسانی در دسترس هستند. این برای آزمایش، ارسال پیام های بازاریابی و تعامل بسیار مفید است. نکته : ما می توانیم از Firebase Cloud Message برای ارسال پیام های فوری حداکثر تا 4 کیلوبایت استفاده کنیم. یک پیاده سازی معمول از سیستم Firebase Cloud Messaging شامل یک سرور برنامه است که با FCM با استفاده از پروتکل HTTP یا XMPP و یک برنامه سرویس گیرنده ارتباط برقرار می کند. پیام ها و اعلان ها را می توان به برنامه مشتری با استفاده از سرور برنامه یا کنسول اطلاعیه های Firebase ارسال کرد. در این آموزش ما یک برنامه ساده پیامرسان اندروید firebase ایجاد خواهد کرد که کاربر در مورد firebase android قابلیت ورود به سیستم را ایجاد خواهد کرد. این پست به شما کمک می کند تا با یکپارچه سازی Firebase Cloud Messaging به اندروید کمک کنید. اضافه کردن Firebase Cloud Messaging برای اضافه کردن FCM به برنامه خود ،باید مراحل زیر را دنبال کنید: به Firebase وب سایت firebase.google.com بروید و یک حساب کاربری firebase برای شروع ایجاد کنید. به کنسول Firebase بروید و با کلیک روی دکمه «ایجاد پروژه جدید»، همانطور که در زیر نشان داده شده، یک پروژه جدید ایجاد کنید. نام پروژه و کشور شما را در حال حاضر در آن قرار دهید، پس از اتمام کار روی دکمه «ایجاد پروژه» کلیک کنید. در صفحه بعدی «افزودن Firebase به برنامه Android خود» را انتخاب کنید و سپس جزئیات مانند نام چکیج برنامه - SHA-1 key را وارد کنید. اگر مطمئن نیستید که چگونه اثر SHA-1 را تولید کنید، به این آموزش مراجعه کنید. فایل google-services.json را دانلود کنید. ما آن را بعد به برنامه اندروید خود اضافه خواهیم کرد. پیش نیازهای Firebase Cloud Messaging: Android Studio روی کامپیوتر شما نصب شده (یونیکس یا ویندوز). برای کار با Firebase باید Android Studio 1.5 یا بالاتر نصب کنید.همچنین آخرین سرویس SDK گوگل بازی را از طریق Android SDK Manager دانلود کنید. دستگاه اندرویدی (Smartphone or Tablet) با Android Studio پیکربندی شده باشد. دستگاه اندروید باید از (Android 2.3 (Gingerbread یا جدیدتر و خدمات Google Play 9.2.0 یا جدیدتر استفاده کند. Firebase SDK باید به پروژه اندروید اضافه شود، Firebase Android Tutorial Part 1 - Getting Started افزودن Permissions و Dependencies پس از همگام سازی Gradle این پروژه، فایل google-services.json را به برنامه پروژه اضافه کنید از آنجا که ما نیاز به اتصال به شبکه داریم مجوز اینترنت را در فایل AndroidManifest.xml اضافه می کنیم. همچنین هشدار لرزش را اضافه کنید در هنگام دریافت notification . AndroidManifest.xml <uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.VIBRATE"/> همچنین برای خدماتی که FirebaseMessagingService را ارائه می دهد برای مدیریت پیام پس از دریافت اعلان ها در برنامه ها در پس زمینه service هارا اضافه کنید. برای دریافت اعلانها در برنامه این کاملا ضروری است وقتی برنامه فعال نیست notification به کاربر اعلام شود. <service android:name=".MyAndroidFirebaseMessagingService"> <intent-filter> <action android:name="com.google.firebase.MESSAGING_EVENT"/> </intent-filter> </service> اضافه کردن یک ورودی برای یک سرویس که FirebaseInstanceIdService را ارائه می دهد. <service android:name=".MyAndroidFirebaseInstanceIDService"> <intent-filter> <action android:name="com.google.firebase.INSTANCE_ID_EVENT"/> </intent-filter> </service> همچنین یک ورودی برای یک activity result اضافه کنید، کاربر با کلیک کردن بر روی اعلان به این اکتیویتی بر می گردد. <activity android:name=".ResultActivity"/> در پایان فایل AndroidManifest.xml به صورت زیر خواهد بود: <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="https://schemas.android.com/apk/res/android" package="com.androidtutorialpoint.firebasecloudmessagingtutorial"> <uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.VIBRATE"/> <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:supportsRtl="true" android:theme="@style/AppTheme"> <activity android:name=".MainActivity"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name=".ResultActivity"/> <service android:name=".MyAndroidFirebaseMsgService"> <intent-filter> <action android:name="com.google.firebase.MESSAGING_EVENT"/> </intent-filter> </service> <service android:name=".MyAndroidFirebaseInstanceIdService"> <intent-filter> <action android:name="com.google.firebase.INSTANCE_ID_EVENT"/> </intent-filter> </service> </application> </manifest> در حال حاضر در پروژه خود build.gridle را از دایرکتوری اصلی پروژه باز کنید و dependency زیر را اضافه کنید. build.gradle classpath 'com.google.gms:google-services:3.0.0' بعد، build.gridle برنامه خود را باز کنید و در آن مقدار زیر را اضافه کنید. build.gradle apply plugin: 'com.google.gms.google-services' dependency های زیر را در قسمت dependency build.gridle برنامه خود اضافه کنید compile 'com.google.android.gms:play-services:9.2.0' compile 'com.google.firebase:firebase-messaging:9.2.1' اضافه کردن قابلیت ها یک کلاس جدید جاوا MyAndroidFirebaseMsgService ایجاد کنید و کد زیر را اضافه کنید. این کلاس یک سرویس است که FirebaseMessagingService را ارائه می دهد. import android.app.NotificationManager; import android.app.PendingIntent; import android.content.Context; import android.content.Intent; import android.media.RingtoneManager; import android.net.Uri; import android.support.v4.app.NotificationCompat; import android.util.Log; import com.google.firebase.messaging.FirebaseMessagingService; import com.google.firebase.messaging.RemoteMessage; public class MyAndroidFirebaseMsgService extends FirebaseMessagingService { private static final String TAG = "MyAndroidFCMService"; @Override public void onMessageReceived(RemoteMessage remoteMessage) { //Log data to Log Cat Log.d(TAG, "From: " + remoteMessage.getFrom()); Log.d(TAG, "Notification Message Body: " + remoteMessage.getNotification().getBody()); //create notification createNotification(remoteMessage.getNotification().getBody()); } private void createNotification( String messageBody) { Intent intent = new Intent( this , ResultActivity. class ); intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); PendingIntent resultIntent = PendingIntent.getActivity( this , 0, intent, PendingIntent.FLAG_ONE_SHOT); Uri notificationSoundURI = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION); NotificationCompat.Builder mNotificationBuilder = new NotificationCompat.Builder( this) .setSmallIcon(R.mipmap.ic_launcher) .setContentTitle("Android Tutorial Point FCM Tutorial") .setContentText(messageBody) .setAutoCancel( true ) .setSound(notificationSoundURI) .setContentIntent(resultIntent); NotificationManager notificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); notificationManager.notify(0, mNotificationBuilder.build()); } } در دریافت پیام متد () onMessageReceived صدا زده می شود. ما از NotificationCompat.Builder استفاده می کنیم تا یک اعلان جدید با صدای اطلاع رسانی پیش فرض ایجاد کنیم و نتایج به ResultActivity منتقل می شود. ایجاد کلاس MyAndroidFirebaseInstanceIdService و اضافه کردن کد زیر. این کلاس هم یک سرویس است که FirebaseInstanceIdService را ارائه می دهد.این قسمت اطمینان میدهد که پیام ارسال شده به دستگاه های خاص موفقیت آمیز بوده است. import android.util.Log; import com.google.firebase.iid.FirebaseInstanceId; import com.google.firebase.iid.FirebaseInstanceIdService; public class MyAndroidFirebaseInstanceIdService extends FirebaseInstanceIdService { private static final String TAG = "MyAndroidFCMIIDService"; @Override public void onTokenRefresh() { //Get hold of the registration token String refreshedToken = FirebaseInstanceId.getInstance().getToken(); //Log the token Log.d(TAG, "Refreshed token: " + refreshedToken); } private void sendRegistrationToServer(String token) { //Implement this method if you want to store the token on your server } } در activity_main.xml کد زیر را اضافه کنید. ما تنها یک TextView فقط برای نمایش نام اکتیویتی نیاز داریم. <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="https://schemas.android.com/apk/res/android" xmlns:app="https://schemas.android.com/apk/res-auto" xmlns:tools="https://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true" tools:context=".MainActivity"> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/textView1" android:text="Welcome to Main Activity" android:textAppearance="@style/TextAppearance.AppCompat.Large" android:textStyle="bold" android:layout_marginTop="100dp" android:textAlignment="center" /> </LinearLayout> MainActivity.java package com.androidtutorialpoint.firebasecloudmessagingtutorial; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } } یک اکتیویتی جدید به نام ResultActivity.java ایجاد کنید و کد زیر را در آن قرار دهید. import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.widget.TextView; public class ResultActivity extends AppCompatActivity { private TextView textView ; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); textView = (TextView)findViewById(R.id.textView1); textView.setText("Welcome to the Result Activity"); } } ما از اکتیویتی activity_main.xml برای ارسال نتیجه به اکتیویتی (activity result) استفاده میکنیم . این اکتیویتی زمانی صدا زده می شود که کاربر بر روی اعلان دریافت شده کلیک کند. اکنون برنامه کامل شده است، ما با ارسال یک اعلان از پانل اعلان های Firebase، برنامه را تست می کنیم.