راه اندازی در اندروید استودیو
پیشنیازها
قبل از شروع کار موارد زیر را بررسی و از درستی آنها اطمینان حاصل نمایید. در صورتی که هر یک از موارد زیر مشکل داشته باشد راهاندازی با مشکل مواجه خواهد شد.
- برای گذر از تحریم سرورهای Jcenter از ابزار گذر از تحریم یا ... استفاده کنید.
- در پروژه شما باید
MinSDKVersion
بزرگتر یا مساوی با 17 ,TargetSDK
بزرگتر یا مساوی با 29 باشد. - اپلیکیشن باید درکنسول ثبت شود.
- توکن مانیفست از کنسول برداشته شود. بعد از اینکه اپلیکیشن خود را در کنسول ثبت کردید میتوانید از طریق قسمت اپلیکیشن ها برنامه خود را پیدا کرده و با کلیک روی دکمه سه نقطه و انتخاب گزینه توکن مانیفست، توکن را بردارید.
- دستگاه تست باید دارای گوگلپلیسرویس بوده و اینترنت آن فعال باشد.
اضافهکردن کتابخانه به پروژه
- در فایل
build.gradle
ماژول اپلیکیشن خود در قسمتdependencies
عبارت زیر را اضافه کنید:
dependencies {
// from mavenCentral()
def pushe_version = "2.6.4"
implementation("co.pushe.plus:base:$pushe_version")
}
(NEW) پشتیبانی از هواوی
نسخهی 2.4.1
با استفاده از ماژول به بعد
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"/>
در صورتی که بخواهید آمار کاربران را بر حسب موقعیت جغرافیایی آنها مشاهده کنید و یا با فیلتر لوکیشن، اعلان ارسال کنید باید کاربر این دسترسی را به برنامه بدهد.
البته توجه داشته باشید که در اندرویدهای ۶ به بالا برای گرفتن این دسترسی ها علاوه بر اضافه کردن آنها به مانیفست باید دسترسی در زمان اجرا هم از کاربر گرفته شود.
استفاده همزمان پوشه و FCM
در صورتی که همزمان در کنار پوشه از Firebase cloud messaging استفاده میکنید بایستی ابتدا تداخل سرویس را حل کنید که هر دو سرویس بتوانند به طور مجزا فعالیت داشته باشند:
بررسی MultiDex
در صورتی که MinSDK
پایینتر از ۲۱ است ممکن است نیاز به فعالسازی مالتیدکس در برنامه باشد.
برای اطلاعات بیشتر به بخش
فعالسازی MultiDex در برنامه
مراجعه کنید.
تست برنامه و مشاهده نصب آن در پنل پوشه
نکته
- Initialization: آماده شدن ماژولهای برای استفاده درون کد
- Registration: رجیسترشدن دستگاه در سرور پوشه
پس از اینکه کتابخانه پوشه را مطابق با آموزش داده شده به پروژه خود اضافه کردید، میتوانید اپلیکیشن خود را اجرا کرده و بر روی دستگاه خود نصب و تست کنید. پس از اجرای برنامه به طور خودکار پوشه اقدام به رجیستر میکند و نیاز به اضافهکردن کدی نیست.
- در پنل پوشه خود به صفحه کاربران/نصب ها بروید.
- بعد از گذشت زمان کوتاهی یک ردیف مشخصات نصب به لیست نصب ها اضافه می شود که متعلق به گوشی شما است.
- یک اعلان تست ارسال کنید. برای ارسال اعلان تست میتوانید از دکمه ارسال نوتیفیکیشن که در کنسول وجود دارد استفاده کنید. دقت کنید تلفن همراه شما به اینترنت متصل باشد.
نکته: اگر می خواهید اپلیکیشن را بر روی 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 جستجو کنید.
ادامهی کار
(بر روی لینک مورد نظر کلیک کنید)
پروژهی نمونه در گیتهاب
بررسی امکانات در نمونهای از قبل طراحی شده دارای تمام امکانات کتابخانهی پوشه
سوالات و مشکلات احتمالی
در صورتی که در یکی از مراحل زیر به مشکلی برخوردید یا هر سوالی در مورد کتابخانه دارید