پیامرسانی درونبرنامهای فایربیس مجموعهای مفید از رفتارها و انواع پیامهای از پیش پیکربندیشده را با ظاهر و حس پیشفرض ارائه میدهد، اما در برخی موارد ممکن است بخواهید رفتارها و محتوای پیام را گسترش دهید. پیامرسانی درونبرنامهای به شما امکان میدهد اقداماتی را به پیامها اضافه کنید و ظاهر و حس پیام را سفارشی کنید.
یک اقدام به پیام خود اضافه کنید
با استفاده از اکشنها میتوانید از پیامهای درونبرنامهای خود برای هدایت کاربران به یک وبسایت یا صفحه خاصی در برنامهتان استفاده کنید.
پیادهسازی یک کنترلکننده لینک عمیق
Firebase In-App Messaging از کنترلکنندههای پیوند برای پردازش اقدامات استفاده میکند. SDK قادر به استفاده از تعدادی کنترلکننده است، بنابراین اگر برنامه شما از قبل یکی دارد، Firebase In-App Messaging میتواند بدون هیچ تنظیم دیگری از آن استفاده کند. اگر هنوز کنترلکنندهای ندارید، میتوانید Firebase Dynamic Links استفاده کنید. برای کسب اطلاعات بیشتر، ایجاد پیوندهای پویا در iOS را مطالعه کنید.
با استفاده از کنسول Firebase ، اکشن را به پیام خود اضافه کنید
وقتی برنامه شما یک کنترلکننده لینک داشت، آمادهاید تا یک کمپین با یک اکشن ایجاد کنید. کنسول Firebase را به قسمت Messaging باز کنید و یک کمپین جدید شروع کنید یا یک کمپین موجود را ویرایش کنید. در آن کمپین، یک Card ، Button text و Button action ، یک Image action یا یک Banner action ارائه دهید که در آن اکشن یک لینک عمیق مرتبط باشد.
قالب عملیات بستگی به طرحبندی پیامی دارد که انتخاب میکنید. ماژولها دکمههای عملیاتی با محتوای متن دکمه، رنگ متن و رنگ پسزمینه قابل تنظیم دارند. از سوی دیگر، تصاویر و بنرهای برتر تعاملی میشوند و هنگام ضربه زدن، عملیات مشخص شده را فراخوانی میکنند.
تغییر ظاهر و حس پیام
Firebase In-App Messaging به شما امکان میدهد نمایش پیامها را سفارشی کنید تا نحوهی رندر طرحبندی پیامها، سبک فونت، شکل دکمهها و سایر جزئیات برنامهتان را تغییر دهید. دو راه برای تغییر نمایش پیامها وجود دارد: تغییر نمایشهای پیشفرض Firebase In-App Messaging یا ایجاد کتابخانهی نمایش پیام خودتان از ابتدا.
تغییر نمایشهای پیشفرض
سادهترین راه برای سفارشیسازی پیامهایتان، استفاده از کد نمایش پیام پیشفرض Firebase In-App Messaging است.
مخزن firebase-ios-sdk را کلون کنید
برای شروع، آخرین نسخه از مخزن firebase-ios-sdk را کپی کنید و دایرکتوری InAppMessaging را باز کنید.
انواع پیام را برای تغییر انتخاب کنید
با کپی کردن مخزن، میتوانید هر یک یا همه انواع پیامهای Firebase In-App Messaging : Card ، Modal ، Banner و ImageOnly را تغییر دهید. هر نوع مربوط به یک طرحبندی پیام در جریان ایجاد کمپین Firebase In-App Messaging است.
بر این اساس، هر نوع به مجموعه دادههای متفاوتی دسترسی دارد که توسط گزینههای سفارشیسازی کمپین در کنسول Firebase تعیین میشود:
| نوع | عنوانمتن | متن بدنه | رنگ متن | رنگ پسزمینه | تصویرداده | دکمهی اکشن | دکمه اقدام ثانویه |
|---|---|---|---|---|---|---|---|
| کارت | |||||||
| مودال | |||||||
| بنر | |||||||
| فقط تصویر |
کد رندر نمایش پیام را تغییر دهید
با در نظر گرفتن محدودیتهای نوع پیام، میتوانید آنها را به هر شکلی که میخواهید تغییر دهید. میتوانید بنری ایجاد کنید که در پایین برنامه شما نمایش داده شود، دکمه عمل را در یک پنجره مودال جابجا کنید، پیام درون برنامهای را در فید کاربر جاسازی کنید یا هر تغییر دیگری که ظاهر و حس پیامها را متناسب با برنامه شما کند.
هنگام تغییر نمایش پیامها، دو نکته اصلی وجود دارد که باید به آنها توجه کنید:
- دایرکتوریهای نوع پیام: هر نوع پیام یک دایرکتوری جداگانه با فایلهایی دارد که منطق آن نوع را تعیین میکنند:
- Storyboard: کتابخانه
InAppMessagingهمچنین یک فایل.storyboardدارد که به تعریف رابط کاربری برای هر سه نوع پیام کمک میکند:
فایلهای موجود در دایرکتوریهای مربوط به انواع پیامهای مورد نظر خود و بخشهای مربوطه از فایل .storyboard را تغییر دهید تا نمایش پیامهای سفارشی خود را ایجاد کنید.
فایل podfile خود را بهروزرسانی کنید تا از کد InAppMessaging اصلاحشدهتان استفاده کند.
برای اینکه Firebase In-App Messaging بتواند از نمایش پیامهای اصلاحشده شما به جای نمایشهای پیشفرض استفاده کند، فایل podfile خود را بهروزرسانی کنید تا از کتابخانه سفارشیشده InAppMessaging شما استفاده کند:
# Uncomment the next line to define a global platform for your project # platform :ios, '9.0' target 'YourProject' do # Comment the next line if you're not using Swift and don't want to use dynamic frameworks use_frameworks! # Pods for YourProject pod 'Firebase' # Remove the default InAppMessaging pod: # pod 'Firebase/InAppMessaging' # Overwrite it with a version that points to your local copy: pod `FirebaseInAppMessaging', :path => '~/Path/To/The/Cloned/Repo/' end
کتابخانه نمایش پیام خود را ایجاد کنید
شما برای ایجاد رابط کاربری نمایش پیامها محدود به استفاده از کتابخانه InAppMessaging نیستید. همچنین میتوانید کد خودتان را از ابتدا بنویسید.
ساخت کلاسی که پروتکل InAppMessagingDisplay را پیادهسازی کند
Firebase In-App Messaging از کلاس InAppMessaging برای مدیریت ارتباطات بین سرورهای فایربیس و برنامه شما استفاده میکند. این کلاس نیز به نوبه خود از پروتکل InAppMessagingDisplay برای نمایش پیامهای دریافتی خود استفاده میکند. برای ساخت کتابخانه نمایش خود، کلاسی بنویسید که این پروتکل را پیادهسازی کند.
تعریف پروتکل و مستندات مربوط به نحوهی انطباق با آن در فایل FIRInAppMessagingDisplay.h از کتابخانهی InAppMessaging قرار دارد.
messageDisplayComponent طوری تنظیم کنید که از کتابخانه نمایش پیام شما استفاده کند.
InAppMessaging از ویژگی messageDisplayComponent خود برای تعیین اینکه از کدام شیء هنگام نمایش پیامها استفاده کند، استفاده میکند. آن ویژگی را روی یک شیء از کلاس نمایش پیام سفارشی خود تنظیم کنید، تا Firebase In-App Messaging بداند که از کتابخانه شما برای رندر پیامها استفاده کند:
InAppMessaging.inAppMessaging().messageDisplayComponent = yourInAppMessagingRenderingInstance