Skip to main content

بررسی وضعیت کتابخانه

شروع به کار پوشه در برنامه در دو مرحله‌ی اصلی انجام می‌شود. Initialization و Registration.

تفاوت Registration و Initialization

هنگامی که ماژول‌های مختلف (نوتیفیکیشن، آنالیتیکس و ...) به طور کامل برای استفاده آماده شوند Initialization انجام‌شده است. در صورتی که نصب این دستگاه در سرورهای پوشه ثبت شود و امکان ارسال اعلان ممکن شود، Registration انجام‌ شده است لذا عملیات Registration نیاز به اینترنت دستگاه‌ دارد.

می‌توانید از اتمام initialization پوشه در برنامه خود با خبر شوید. به این ترتیب می‌توانید پس از initialize شدن ماژول‌های پوشه عملیات دلخواه خود را انجام دهید.

به این منظور از دستور زیر استفاده نمایید:

Pushe.setInitializationCompleteListener {
println("Pushe initialization completed successfully.");
// your logic
}

نکته: انجام‌شدن Initialization به معنی ثبت‌شدن دستگاه نیست و مربوط به ماژول‌های لایبرری‌ست.

همچنین برای چک کردن initialization پوشه می‌توانید از متد زیر استفاده کنید:

Pushe.isInitialized();

بررسی رجیستر شدن

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

  • تابع isRegistered
  • ست‌کردن Listener تا وقتی عملیات رجیستر شدن دستگاه در پوشه انجام شد این listener فراخوانی شود

isRegistered(): Boolean

در صورتی که دستگاه از Firebase cloud توکن‌ گرفته باشد و نصب دستگاه در سرور‌های پوشه ثبت‌ شده باشد مقدار خروجی صحیح خواهد بود.

val isPusheRegistered = Pushe.isRegistered()

setRegistrationCompleteListener(Callback registerCallback)

در صورتی که دستگاه از Firebase cloud توکن‌ گرفته باشد و نصب دستگاه در سرور‌های پوشه ثبت‌ شده باشد تابع registerCallback اجرا خواهد شد.

Pushe.setRegistrationCompleteListener {
println("Pushe has registered your device.")
}

بهتر است برای استفاده از امکانات پوشه از این تابع استفاده کنید تا مطمئن شوید تا رجیستر انجام نشده‌ است،‌ امکانات فراخوانی نشوند. برای مثال وقتی می‌خواهید کاربری را عضو تاپیکی کنید بهتر است ابتدا بررسی کنید که عملیات رجیستر پوشه انجام شده باشد.