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

پیش‌نیازها

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

  • برای گذر از تحریم سرور‌های Jcenter از ابزار گذر از تحریم یا ... استفاده کنید.
  • در پروژه شما باید MinSDKVersion بزرگتر یا مساوی با 17 ,TargetSDK بزرگتر یا مساوی با 29 باشد.
  • اپلیکیشن باید درکنسول ثبت‌ شود.
  • توکن مانیفست از کنسول برداشته شود. بعد از اینکه اپلیکیشن خود را در کنسول ثبت کردید می‌توانید از طریق قسمت اپلیکیشن ها برنامه خود را پیدا کرده و با کلیک روی دکمه سه نقطه و انتخاب گزینه توکن مانیفست، توکن را بردارید.
  • دستگاه تست باید دارای گوگل‌پلی‌سرویس بوده و اینترنت آن فعال‌ باشد.

اضافه‌کردن کتابخانه به پروژه

  • در فایل build.gradle اصلی پروژه خود در قسمت allprojects -> repositories عبارت زیر را اضافه کنید:
build.gradle (project)
allprojects{
repositories {
...
// Pushe
jcenter()
// Fcm
google()
// Huawei HMS
maven {url 'https://developer.huawei.com/repo/'}
...
}
}
  • در فایل build.gradle ماژول اپلیکیشن خود در قسمت dependencies عبارت زیر را اضافه کنید:
build.gradle (app:module)
dependencies {
// ...
implementation 'co.pushe.plus:base:2.4.0'
}
(NEW) پشتیبانی از هواوی

نسخه‌ی 2.4.0 با استفاده از ماژول hms در کنار FCM قابلیت ارسال پوش به دستگاه‌های هواوی که گوگل پلی سرویس ندارند، را به کتابخانه اضافه کرده‌است.

(اطلاعات بیشتر)

برای مشاهده‌ی تغییرات نسبت به نسخه‌های پیشین به تاریخچه‌ی نسخه‌ها مراجعه کنید

  • در بالای صفحه سمت راست sync را بزنید تا gradle سینک شود.

در صورت بروز خطا در هنگام سینک بخش راهنمایی خطا‌ها را بررسی نمایید.

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

وارد پنل کاربری پوشه شوید و در قسمت اپلیکیشن‌ها، بر روی آیکون دریافت مانیفست کلیک کنید (این آیکون را می‌توانید با کلیک بر روی علامت سه نقطه‌ی گوشه‌ی سطر مربوط به هر اپلیکیشن ببینید). مانیفست اندروید استودیو را انتخاب کنید و محتویات آن را مطابق راهنمای موجود در پنل، به تگ ‍‍application در فایل AndroidManifest.xml پروژه خود اضافه کنید.

محتوای اضافه‌شده به مانیفست تگ meta-data است و همانطور که در شکل زیر نشان داده شده است باید داخل تگ application قرار گیرد:

<manifest ...>
<application ...>
...
<!-- تگ باید مانند نمونه زیر داخل تگ اپلیکیشن قرار گیرد -->
<meta-data android:name="pushe_token" android:value="PUSHE_TOKEN" />
</application>
</manifest>

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

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

<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"/>

در صورتی که بخواهید آمار کاربران را بر حسب موقعیت جغرافیایی آنها مشاهده کنید و یا با فیلتر لوکیشن، اعلان ارسال کنید باید کاربر این دسترسی را به برنامه بدهد.

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

بررسی MultiDex

در صورتی که MinSDK پایین‌تر از ۲۱ است ممکن است نیاز به فعالسازی مالتی‌دکس در برنامه باشد.
برای اطلاعات بیشتر به بخش فعال‌سازی MultiDex در برنامه مراجعه کنید.

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

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

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

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

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

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

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

در صورت مشاهده‌ی خطا لطفا توضیح خطا را در FAQ جستجو کنید.

ادامه‌ی کار

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

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

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

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

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