راهنمای راهاندازی پوش اندروید
با خواندن این راهنما، در انتها شما میتوانید SDK پوشنوتیفیکیشن نجوا را از طریق اندروید استودیو به اپلیکیشن اندرویدی خود اضافه کنید. در صورتی که در هر مرحله از فرآیند نصب با مشکلی روبرو شدید، با تلگرام پشتیبانی نجوا در ارتباط باشید.
مرحله یک: تغییرات gradle
در فایل مربوط به gradle اپلیکیشن تنها چهار خط کد زیر را در dependencies کپی کنید. دقت کنید که تنها چهار خطی را که با implementation شروع میشود، کپی کنید. سایر خطها فقط برای راهنمایی شما است.
dependencies { ... implementation 'com.google.firebase:firebase-core:9.0.0' implementation 'com.google.firebase:firebase-messaging:17.3.4' implementation 'com.google.android.gms:play-services-location:16.0.0' implementation 'com.najva.sdk:najva-android-sdk:1.0.6' implementation 'io.sentry:sentry-android:1.7.5' implementation 'com.android.volley:volley:1.1.1' }
در صورتی که از کتابخانههای googleplay service location و کتابخانههای مربوط به firebase استفاده میکنید دقت کنید که نسخه آنها حداقل برابر با نسخههایی که در کد بالا هست باشد.
همچنین در فایل gradle مربوط به پروژه دقت کنید که تکه کد زیر از قبل موجود باشد؛ و اگر نیست آن را اضافه کنید:
allprojects { repositories { google() jcenter() } }
در بالای صفحه سمت راست sync را بزنید تا gradle سینک شود.
مرحله دو: تغییرات Activity اصلی
در اکتیویتی اصلی (Main Activity) اپلیکیشن خود در قسمت importها، قطعه کد زیر را کپی کنید:
import com.najva.najvasdk.Class.Najva;
همچنین در ابتدای تابع onCreate قطعه کدی را که در پنل کاربری نجوا شما وجود دارد کپی کنید.(تکه کدی مشابه زیر):
Najva.initialize(this, YOUR-CAMPAIGN-ID, YOUR-WEBSITE-ID, YOUR-API-KEY, true);
*قطعه کد بالا به صورت خودکار در پنل نجوای شما پس از وارد کردن اطلاعات اپلیکیشن ساخته میشود و کافیست تنها آن را کپی نمایید.
*برای اطمینان از صحت عملکرد سرویس نجوا، پس از اعمال تغییرات گفته شده اپلیکیشن خود را روی یک دستگاه نصب کنید. پس از مدت زمان کوتاهی در پنل نجوای شما اطلاعات دستگاه شما ثبت میشود.
همچنین میتوانید یک نوتیف تستی به دستگاه خودتان بفرستید.
اکنون اپلیکیشن شما برای ارسال پوشنوتیفیکیشن آماده است.
دریافت نوتیف در قالب json:
شما میتوانید در پنل نجوای خود، در قسمت ارسال نوتیفیکیشن، دیتای اضافه در قالب json ارسال کنید. برای دریافت این دیتا باید در پروژه کدهای زیر را اضافه کنید:
در فایل AndroidManifest.xml داخل بدنهی قطعه کد زیر را کپی کنید:
<service android:name=".MyPushService"> <intent-filter> <action android:name="com.najva.najvasdk.Service.NajvaMessagingService" ></action> </intent-filter> </service>
در مرحله بعد لازم است یک کلاس جدید جاوا با نام MyPushService ایجاد نمایید:
public class MyPushService extends NajvaMessagingService{ @Override public void onMessageReceived(RemoteMessage remoteMessage) { Map<String, String> data = remoteMessage.getData(); try { JSONObject jsonData = new JSONObject(data.get("json-data")); } catch (JSONException e) { e.printStackTrace(); } } }
به این شکل به دیتای ارسالی از سمت پنل در اپلیکیشن خود از طریق jsonData دسترسی دارید.
همگام سازی کاربران اپلیکیشن و کاربران نجوا برای ارسال نوتیف هدفمند:
شما میتوانید برای این که برای کاربران خاص خود با توجه به رفتارشان در اپلیکیشن نوتیف ارسال کنید، کاربران اپلیکیشن و کاربران نجوایی خود را همگام نمایید. برای این کار لازم است که در پروژه خود یک کلاس جاوا مانند زیر پیاده سازی نمایید و تابع ذکر شده را override کنید. در این تابع توکن نجوایی کاربر به شما داده میشود و در همین جا شما میتوانید کاربر نجوایی و اپلیکیشن خود را mapکنید:
public class MyNajvaUserHandler extends NajvaUserHandler{ @Override public void najvaUserSubscribed(String token) { // add your logic here! } }
در نهایت لازم است در اکتیویتی اصلی خود پس از initializeکردن نجوا تکه کد زیر را قرار دهید:
Najva.setUserHandler(new MyNajvaUserHandler());