با استفاده از API Firebase Cloud Messaging HTTP v1 ، میتوانید از راه دور اعلانهای فعالیت زنده را در دستگاههای iOS ارسال، بهروزرسانی و پایان دهید. توجه داشته باشید که برای استفاده از فعالیت زنده به iOS 16.1 و برای شروع از راه دور اعلان فعالیت زنده به iOS 17.2 نیاز دارید.
قبل از اینکه شروع کنی
قبل از شروع فعالیت زنده در Firebase Cloud Messaging ، دستورالعملهای موجود در بخش «راهاندازی برنامه کلاینت Firebase Cloud Messaging در پلتفرمهای اپل» را دنبال کنید تا Firebase Cloud Messaging ایجاد و به برنامه کلاینت خود اضافه کنید.
شروع یک فعالیت زنده
برای شروع یک فعالیت زنده از راه دور با استفاده از Firebase Cloud Messaging ، باید یک توکن push-to-start از اپل دریافت کنید. همچنین به توکن ثبت FCM برای برنامه هدف نیاز خواهید داشت.
برای ساخت یک payload که یک فعالیت زنده را شروع میکند ، فیلد apns.payload را از نمونه کد زیر پر کنید تا از راه دور یک فعالیت زنده با استفاده از FCM شروع شود.
استراحت
{ "message": { "token": "FCM_TOKEN", "apns": { "live_activity_token": "LIVE_ACTIVITY_PUSH_TO_START_TOKEN", "headers": { "apns-priority": "10" }, "payload": { "aps": { "timestamp": TIMESTAMP, "event": "start", "content-state": { "demo": 1 }, "attributes-type": "DemoAttributes", "attributes": { "demoAttribute": 1 }, "alert": { "title": "test title", "body": "test body" } } } } } }
حلقه
curl -X POST -H "Authorization: Bearer OAUTH2_ACCESS_TOKEN" -H "Content-Type: application/json" -d '{ "message": { "token": "FCM_TOKEN", "apns": { "live_activity_token": "LIVE_ACTIVITY_PUSH_TO_START_TOKEN", "headers": { "apns-priority": "10" }, "payload": { "aps": { "timestamp": TIMESTAMP, "event": "start", "content-state": { "demo": 1 }, "attributes-type": "DemoAttributes", "attributes": { "demoAttribute": 1 }, "alert": { "title": "test title", "body": "test body" } } } } } }' https://fcm.googleapis.com/v1/projects/YOUR_PROJECT_ID/messages:send
برای امتحان کردن نمونه در API Explorer، روی Run کلیک کنید.
بهروزرسانی یک فعالیت زنده
برای بهروزرسانی یک فعالیت زنده از راه دور با استفاده از Firebase Cloud Messaging ، باید یک توکن ارسال از اپل دریافت کنید. همچنین به توکن ثبت FCM برای برنامه هدف نیاز خواهید داشت.
To construct a payload that updates a Live Activity , fill in the apns.payload field from the following code sample to remotely update a live activity using FCM .
استراحت
{ "message": { "token": "FCM_TOKEN", "apns": { "live_activity_token": "LIVE_ACTIVITY_PUSH_TOKEN", "headers": { "apns-priority": "10" }, "payload": { "aps": { "timestamp": TIMESTAMP, "event": "update", "content-state": { "test1": 100, "test2": "demo" }, "alert": { "title": "test title", "body": "test body" } } } } } }
حلقه
curl -X POST -H "Authorization: Bearer OAUTH2_ACCESS_TOKEN" -H "Content-Type: application/json" -d '{ "message": { "token": "FCM_TOKEN", "apns": { "live_activity_token": "LIVE_ACTIVITY_PUSH_TOKEN", "headers": { "apns-priority": "10" }, "payload": { "aps": { "timestamp": TIMESTAMP, "event": "update", "content-state": { "test1": 100, "test2": "demo" }, "alert": { "title": "test title", "body": "test body" } } } } } }' https://fcm.googleapis.com/v1/projects/YOUR_PROJECT_ID/messages:send
برای امتحان کردن نمونه در API Explorer، روی Run کلیک کنید.
پایان دادن به یک فعالیت زنده
To end a live activity using Firebase Cloud Messaging , you need to obtain a push token from Apple. You will also need the FCM registration token for the target app.
برای ساخت یک payload که به یک فعالیت زنده پایان میدهد ، فیلد apns.payload را از نمونه کد زیر پر کنید تا از راه دور با استفاده از FCM به یک فعالیت زنده پایان دهید.
استراحت
{ "message": { "token": "FCM_TOKEN", "apns": { "live_activity_token": "LIVE_ACTIVITY_PUSH_TOKEN", "headers": { "apns-priority": "10" }, "payload": { "aps": { "timestamp": TIMESTAMP, "dismissal-date": DISMISSAL_DATE, "event": "end", "content-state": { "test1": 100, "test2": "demo" }, "alert": { "title": "test title", "body": "test body" } } } } } }
حلقه
curl -X POST -H "Authorization: Bearer OAUTH2_ACCESS_TOKEN" -H "Content-Type: application/json" -d '{ "message": { "token": "FCM_TOKEN", "apns": { "live_activity_token": "LIVE_ACTIVITY_PUSH_TOKEN", "headers": { "apns-priority": "10" }, "payload": { "aps": { "timestamp": TIMESTAMP, "dismissal-date": DISMISSAL_DATE, "event": "end", "content-state": { "test1": 100, "test2": "demo" }, "alert": { "title": "test title", "body": "test body" } } } } } }' https://fcm.googleapis.com/v1/projects/YOUR_PROJECT_ID/messages:send
برای امتحان کردن نمونه در API Explorer، روی Run کلیک کنید.