چرخه توکن و شناسه ثابت مخاطب (Subscriber ID) در Android SDK
SDK پروفایل مخاطب را میسازد و ثبت، بهروزرسانی و همگامسازی توکن FCM را انجام میدهد. این صفحه توضیح میدهد چه کارهایی خودکار انجام میشوند و چه بخشهایی را باید در اپ پیادهسازی کنید.
نیازی به ثبت دستی endpoint نیست
initialize ابتدا یک شناسه ثابت مخاطب (Subscriber ID) محلی میسازد و آن را با پوشفا همگام میکند. اگر autoRegister=true و اعلانها فعال باشند، توکن FCM را از Firebase میگیرد و ثبت میکند. در Android 13+ پس از اجازه دریافت اعلان فقط registerForPush را صدا بزنید. مسیرهای وبسرویس داخلی ثبت توکن بخشی از پیادهسازی SDK هستند، نه API پیشنهادی اپ.
چرخه خودکار
initialize
شناسه ثابت مخاطب (Subscriber ID) ساخته یا بازیابی و state سرور Sync میشود.
اجازه دریافت اعلان فعال
autoRegister توکن را خودکار دریافت و ثبت میکند.
اجازه دریافت اعلان جدید
اپ registerForPush را بعد از قبول کاربر اجرا میکند.
توکن FCM جدید
Service خود SDK handleNewToken را اجرا و توکن جدید را روی همان Subscriber ثبت میکند.
Service اختصاصی
فقط در این حالت اپ باید onNewToken را به Pushfa.handleNewToken تحویل دهد.
چه چیزی پایدار است؟
| مقدار | رفتار |
|---|---|
| FCM token | ممکن است Refresh شود و SDK آن را بهروزرسانی میکند. |
| Subscriber ID | در Update عادی اپ باقی میماند و برای همان نصب پایدار است. |
| Uninstall یا Clear Data | داده محلی و شناسه ثابت مخاطب (Subscriber ID) حذف میشود و نصب بعدی هویت جدید میگیرد. |
| شناسه کاربر در سیستم شما (External ID) و Alias | برای اتصال نصب جدید به هویت کسبوکاری دوباره ثبت شوند. |
تنظیم autoRegister
در حالت عادی مقدار پیشفرض true را نگه دارید. اگر محصول نیاز دارد ثبت Push فقط بعد از مرحله خاصی انجام شود، autoRegister=false قرار دهید و پس از اجازه دریافت اعلان و تصمیم کاربر registerForPush را اجرا کنید.
Pushfa.initialize(
application = this,
config = PushfaConfig(
apiPublicKey = "YOUR_PUBLIC_KEY",
autoRegister = false,
),
)
// بعد از رضایت کاربر
Pushfa.registerForPush { result ->
Log.d("Pushfa", "active=${result.value?.hasPush}")
}