راه‌اندازی در فلاتر

نسخه‌ی فعلی پلاگین فقط از سیستم‌عامل اندروید پشتیبانی می‌کند.

پیش‌نیازها

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

  • برای گذر از تحریم سرور‌های Jcenter از ابزار گذر از تحریم یا ... استفاده کنید.
  • اپلیکیشن باید درکنسول ثبت‌ شود.
  • توکن مانیفست از کنسول برداشته ‌شود.
  • دستگاه تست باید دارای گوگل‌پلی‌سرویس بوده و اینترنت آن فعال‌ باشد.

اضافه‌کردن پلاگین به پروژه

به فایل pubspec.yaml پلاگین پوشه را اضافه‌کنید:

dependencies:
# ...
# Add Pushe
pushe_flutter: ^2.1.0

سپس سینک کنید یا دستور flutter packages get را در ترمینال وارد کنید تا پلاگین‌ها به پروژه اضافه‌ شوند.

اضافه‌کردن محتوای مانیفست

محل فایل‌مانیفست android/app/src/main/AndroidManifest.xml می‌باشد.

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

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

<manifest ...>
<application ...>
...
<!-- تگ باید در اینجا قرار گیرد -->
<meta-data android:name="pushe_token" android:value="{PUSHE_TOKEN}" />
</application>
</manifest>

به جای {PUSHE_TOKEN} باید توکن برنامه‌ی خود را قرار دهید.

برای استفاده از امکان ارسال اعلان با استفاده‌ از موقعیت مکانی پرمیشن لوکیشن را نیز به مانیفست اضافه‌کنید:

<manifest>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<!--برای اندرویدهای ۱۰ و بالاتر -->
<uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION"/>
<application ...>
</manifest>
  • در صورتی که بخواهید آمار کاربران را بر حسب موقعیت جغرافیایی آنها مشاهده کنید و یا (Geofencing) با فیلتر لوکیشن، اعلان ارسال کنید باید کاربر این دسترسی را به برنامه اضافه‌کنید.

  • البته توجه داشته باشید که در اندرویدهای ۶ به بالا برای گرفتن این دسترسی ها علاوه بر اضافه کردن آنها به مانیفست باید دسترسی در زمان اجرا هم از کاربر گرفته شود. اطلاعات بیشتر

  • در اندروید ۱۰ به بالا بایستی دسترسی استفاده از لوکیشن در بکگراند نیز اضافه شود.

فعال‌کردن مالتی‌دکس

Android

در صورتی که minSdkVersion کمتر از ۲۱ است، ممکن است نیاز به فعال‌کردن مالتی‌دکس باشد. برای اطلاعات بیشتر فعال‌کردن مالتی‌دکس را مشاهده‌کنید.

اضافه‌کردن کدهای لازم

در صورتی که بخواهید تابعی از پوشه را استفاده کنید بایستی آن‌را در کد ایمپورت کنید:

در بخش importهای فایل main.dart زیر را اضافه‌کنید تا کلاس‌های پوشه در فایل قابل‌ استفاده شوند:

import 'package:pushe_flutter/pushe.dart';

تست برنامه و مشاهده نصب آن در پنل پوشه

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

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

تست در اندروید

Android

نکته: اگر می خواهید اپلیکیشن را بر روی Emulator تست کنید، بر روی ایمولاتور شما باید Google API نصب باشد.

پس از اجرای برنامه باید در Android logcat لاگ‌های زیر را ببینید (ممکن است به دلیل ارتباط با سرور این پروسه چند ثانیه طول بکشد):

در اندروید استودیو لاگ‌کت از ابزار موجود است. در صورتی که از ابزار دیگری مانند VSCode استفاده‌ می‌کنید می‌توانید از هر روشی برای مشاهده‌ی لاگ استفاده کنید. مستندات اندروید برای لاگ‌کت

برای مشاهده‌ی بهتر لاگ‌ها می‌توانید فیلتر Pushe را روی لاگ‌ها اعمال کنید.

// Android logcat:
Pushe: Starting Pushe initialization
Pushe: Pushe initialization complete
Pushe: Registration is required, performing registration
Pushe: Registration successful

ادامه‌ی کار

(بر روی لینک مورد نظر کلیک کنید)

سورس‌کد پلاگین

برای مشاهده‌ی سورس‌کد پروژه و تست نسخه‌های منتشرنشده می‌توانید در گیتهاب سورس پروژه را مشاهده نمایید.

پروژه‌ی نمونه در گیت‌هاب

بررسی امکانات در نمونه‌ای از قبل طراحی شده دارای تمام امکانات کتابخانه‌ی پوشه

سوالات و مشکلات احتمالی

در صورتی که در یکی از مراحل زیر به مشکلی برخوردید یا هر سوالی در مورد کتابخانه‌ دارید