ขั้นสูง
การสร้างกลุ่มการแจ้งเตือน¶
คุณสามารถแสดงการแจ้งเตือนเป็นกลุ่มในศูนย์การแจ้งเตือน การแจ้งเตือนที่สอดคล้องกับเหตุการณ์เดียวกันสามารถถูกรวมกลุ่มและแสดงในรูปแบบที่ยุบได้ กลุ่มการแจ้งเตือนที่ยุบได้สามารถขยายอีกครั้งโดยผู้ใช้ และการแจ้งเตือนแต่ละรายการ (การแจ้งเตือนแต่ละรายการที่อยู่ในกลุ่ม) สามารถดำเนินการแยกต่างหากได้
กลุ่มการแจ้งเตือนสามารถสร้างได้โดยการเปลี่ยนคีย์กลุ่มให้เป็นเปิดใช้งานและเพิ่มค่าคีย์ในคอนโซล > การแจ้งเตือน > การผลักดัน v4 > ลงทะเบียนแคมเปญการผลักดัน > การลงทะเบียนแคมเปญ > ตัวเลือก > คีย์กลุ่ม หลังจากสร้างกลุ่มในคอนโซลแล้ว คุณสามารถใช้กลุ่มการแจ้งเตือนด้วย groupId
เมื่อส่ง การผลักดันในท้องถิ่น และการแจ้งเตือนการผลักดันระยะไกล เมื่อกลุ่มถูกนำไปใช้ การแจ้งเตือนจะถูกแสดงในรูปแบบที่ยุบโดยกลุ่มตามที่แสดงด้านล่าง
| |
![]() | ![]() |
</tbody>
การแจ้งเตือนสื่อ iOS¶
โดยการใช้กรอบงาน UserNotifications ของ Apple คุณสามารถเพิ่มไฟล์สื่อ เช่น รูปภาพและวิดีโอ ลงในการแจ้งเตือน
![]() | ![]() | ![]() |
กระบวนการดำเนินงาน¶
ฟีเจอร์การแจ้งเตือนสื่อทำงานโดยใช้ Notification Service Extension ของ iOS (ซึ่งจะเรียกว่า Extension ต่อไป)
บริการขยายการแจ้งเตือนเป็นประเภทหนึ่งของการขยายแอปที่ช่วยให้คุณสามารถปรับเปลี่ยน Payload ก่อนที่จะมีการส่งการแจ้งเตือนระยะไกลไปยังผู้ใช้ ซึ่งช่วยให้สามารถใช้กระบวนการ (UI หรือฟังก์ชัน) จากแอปอื่นได้โดยไม่ต้องเปลี่ยนบริบท สำหรับรายละเอียดเพิ่มเติม โปรดดูที่ เพิ่มเติม.
ข้อจำกัดขนาดและประเภทไฟล์¶
มีขีดจำกัดขนาดเมื่อแนบไฟล์มีเดีย และข้อมูลรายละเอียดสามารถดูได้ที่ UNNotificationAttachment.
Warning
เราได้ค้นพบว่าเมื่อแอพที่ใช้ AVAudioSession กำลังทำงาน เช่น Youtube และเกมมือถือหลายเกม (เช่น Summoners War, Be a Star, Chain Strike) การส่งเสียงที่ได้รับผ่านการแจ้งเตือนแบบพุชอาจทำให้หน้าจอหลัก (Springboard) รีบูต ปัญหานี้เกิดขึ้นไม่ว่าจะเป็นเวอร์ชัน iOS หรือประเภทอุปกรณ์ใด และได้รับการยืนยันว่ามีความขัดแย้งเกิดขึ้นภายในระบบของ Apple ซึ่งแยกจาก Hive
เมื่อวันที่ 20 ธันวาคม 2018 เราได้สอบถามเกี่ยวกับปัญหานี้กับ Apple และจนกว่าจะมีการเตรียมคำตอบ โปรด หยุดใช้ ฟีเจอร์การส่งเสียงโดยใช้การแจ้งเตือนแบบพุช.
หมวดหมู่ | ประเภท | ขนาดสูงสุด |
---|---|---|
ภาพ | JPG, JPEG, PNG, GIF | 10MB |
วิดีโอ | MP4, AVI | 50MB |
- หากเกิดการหมดเวลาเนื่องจากสภาพเครือข่ายที่ไม่ดี ผู้ใช้จะได้รับการแจ้งเตือนปกติโดยไม่มีสื่อ
- ในเครือข่ายที่ช้ามาก การดาวน์โหลดอาจใช้เวลานานถึง 10 นาที ดังนั้นจึงจำเป็นต้องพิจารณาสภาพเครือข่ายในพื้นที่และใช้สื่อที่มีขนาดเหมาะสม
การนำไปใช้และการใช้งาน¶
ในการดาวน์โหลดสื่อและสร้างวัตถุการแจ้งเตือนใหม่เพื่อส่งมอบให้กับผู้ใช้ จะต้องมีการตั้งค่าและโค้ดต้นฉบับเพิ่มเติมหลายอย่าง
Note
การขยายบริการการแจ้งเตือนไม่สามารถรวมและแจกจ่ายเป็นส่วนหนึ่งของไลบรารีหรือเฟรมเวิร์ก ดังนั้นในการใช้การขยาย คุณต้องดำเนินการตั้งค่าตามคำแนะนำที่ให้โดย Hive.
การเพิ่มส่วนขยาย¶
ในการใช้ฟีเจอร์การแจ้งเตือนสื่อ คุณต้องเพิ่ม ส่วนขยายบริการการแจ้งเตือน ลงในโปรเจกต์ของคุณ แทนที่จะเพิ่มหรือเขียนทับคลาสโดยตรง ให้เพิ่มเป้าหมายใหม่ลงในโปรเจกต์
เมื่อคุณเพิ่มเป้าหมาย เทมเพลตจะถูกสร้างขึ้นโดยอัตโนมัติ
<summary>การเพิ่มเป้าหมายในโปรเจกต์ Unity</summary>
ใน Unity Editor, Hive SDK จะทำการเพิ่มเป้าหมายและสร้าง Info.plist โดยอัตโนมัติด้วยฟีเจอร์ PostProcess คุณเพียงแค่ต้องเปิดใช้งานตัวเลือกการส่งสื่อ; ไม่มีขั้นตอนอื่นใดที่ต้องทำด้วยตนเอง.
1. ในแถบเมนูของ Unity Editor ให้ไปที่ **Hive > Build project post process settings > iOS**
2. เปิดใช้งาน **Push Media Contents**
<summary>การเพิ่มเป้าหมายในสภาพแวดล้อมที่ไม่ใช่ Unity</summary>
1. ในการตั้งค่าโปรเจกต์ ให้คลิกที่ปุ่ม **Add Target** (ปุ่ม **+** ที่มุมล่างซ้าย)
{width="700px"}
2. เลือก **Notification Service Extension** และคลิก **ถัดไป** <br>
(ตั้งแต่ Xcode 8 เป็นต้นไป คุณสามารถเพิ่ม Notification Service Extension เป็นเป้าหมายในโปรเจกต์)
{width="700px"}
3. ป้อนชื่อ **ผลิตภัณฑ์**
{width="700px"}
4. เมื่อป๊อปอัพปรากฏขึ้น ให้คลิก **เปิดใช้งาน** <br>
ส่วนขยายจะถูกฝังโดยอัตโนมัติในโปรเจกต์ปัจจุบัน และจะมีแผนผังสำหรับการสร้างเพิ่มเข้ามา
5. ในแท็บ **ทั่วไป** ให้ตรวจสอบว่า **ส่วนขยาย** ได้ถูกเพิ่มลงในโปรเจกต์แล้ว
{width="700px"}
6. ยืนยันว่า **NotificationService** คลาสแม่แบบได้ถูกเพิ่มเข้าไปในโปรเจกต์แล้ว
{width="700px"}
การเพิ่ม HIVEExtensions.framework¶
คุณสามารถดาวน์โหลดสื่อได้อย่างง่ายดายโดยใช้ HIVEExtensions.framework ที่จัดเตรียมโดย Hive.
วิธีการเพิ่ม HIVEExtensions.framework มีดังนี้:
ถ้าคุณมี Podfile อยู่แล้ว ให้เปิดไฟล์และเพิ่มคำสั่งเป้าหมาย 'NotificationServiceExtension (ชื่อเป้าหมายตัวอย่าง)' do-end statement.
-
ปิดไฟล์ Podfile และรัน
pod install
ในไดเรกทอรีโปรเจกต์ของคุณ. -
เมื่อคุณเปิด NotificationSample (ชื่อโปรเจ็กต์ตัวอย่าง).xcworkspace คุณจะเห็นว่าโปรเจ็กต์ Pods ได้ถูกเพิ่มเข้ามาแล้วตามที่แสดงด้านล่าง คุณสามารถนำเข้า HIVEExtensions ในทั้งเป้าหมาย NotificationSample และ NotificationServiceExtension ได้แล้ว
การใช้เฟรมเวิร์ก¶
นำเข้าเฟรมเวิร์กในไฟล์ NotificationService.swift ตามที่แสดงในตัวอย่าง ดำเนินการตามวิธีที่ให้ไว้ในแม่แบบเพื่อติดต่อกับวิธีการที่ให้โดย HIVEExtensions.framework และ ลบโค้ดแม่แบบเดิมที่อยู่ภายในวิธีการ。
import HIVEExtensions
func didReceiveNotificationRequest(request: UNNotificationRequest, with contentHandler: (UNNotificationContent) -> Void) {
HIVENotificationService.didReceive(request) { content in
guard let content else { return }
contentHandler(content)
}
}
func serviceExtensionTimeWillExpire() {
HIVENotificationService.serviceExtensionTimeWillExpire()
}
#import <HIVEExtensions/HIVEExtensions.h>
- (void)didReceiveNotificationRequest:(UNNotificationRequest *)request withContentHandler:(void (^)(UNNotificationContent * _Nonnull))contentHandler {
[HIVENotificationService didReceiveNotificationRequest:request withContentHandler:contentHandler];
}
- (void)serviceExtensionTimeWillExpire {
[HIVENotificationService serviceExtensionTimeWillExpire];
}
ข้อควรระวังในการใช้งาน¶
ความแตกต่างระหว่างเวลาที่ส่งและเวลาที่รับ¶
หลังจากที่งานทั้งหมดใน Extension เสร็จสิ้นแล้ว การแจ้งเตือนจะถูกส่งไปยังผู้ใช้ ซึ่งอาจส่งผลให้เกิดความแตกต่างระหว่างเวลาที่ส่งและเวลาที่รับ และไคลเอนต์จะแสดงเวลาโดยอิงจากเวลาที่เซิร์ฟเวอร์ส่งไป
ตัวอย่างเช่น หากมีการส่งการแจ้งเตือนในเวลา 15:00 และการดาวน์โหลดเสร็จสิ้นในเวลา 15:05 การแจ้งเตือนจะแสดงว่าได้มาถึงในเวลา 15:00
ความจุของอุปกรณ์¶
สื่อที่ได้รับผ่านการแจ้งเตือนแบบพุชจะถูกเก็บไว้ในอุปกรณ์ของผู้ใช้และถูกเปิดเผยผ่านการพุช และสื่อที่ได้รับจะถูกเก็บในพื้นที่ข้อมูลแคชภายในของอุปกรณ์ โดยใช้พื้นที่ภายในของอุปกรณ์ของผู้ใช้ พื้นที่ข้อมูลแคชจะถูกล้างโดยอัตโนมัติโดยระบบปฏิบัติการหากความจุการจัดเก็บภายในของอุปกรณ์ของผู้ใช้ไม่เพียงพอ
การใช้งานข้อมูลมือถือของผู้ใช้¶
สื่อที่ได้รับผ่านการแจ้งเตือนแบบพุชจะใช้ข้อมูลมือถือของผู้ใช้ในการดาวน์โหลด และการดาวน์โหลดจะดำเนินต่อไปโดยไม่มีความยินยอมจากผู้ใช้ ซึ่งอาจทำให้เกิดค่าใช้จ่ายข้อมูลระหว่างการดาวน์โหลด
ในกรณีที่ไฟล์เสียง/วิดีโอถูกส่งผ่านการดัน ให้ตรวจสอบสถานะการเชื่อมต่อเครือข่ายของผู้ใช้ก่อนดาวน์โหลด หากผู้ใช้ไม่ได้เชื่อมต่อกับ Wi-Fi ให้หยุดการดาวน์โหลดและแสดงการแจ้งเตือนการดันโดยไม่มีสื่อแทน
ในขณะนี้ ประเภทของสื่อที่ได้รับผ่านการส่งจะได้รับการยืนยันโดยนามสกุลที่ระบุไว้ที่ส่วนท้ายของ URL สื่อ และเฉพาะนามสกุลที่ระบุไว้ในส่วน [ขนาดไฟล์และประเภทจำกัด] เท่านั้นที่จะถูกแสดงอย่างถูกต้อง
URL ที่ได้รับ | wifi | LTE / 3G |
http://xxx/notimovie.mp4 | สื่อจะถูกเปิดเผยเสมอหลังจากดาวน์โหลด | เนื่องจากมีนามสกุลที่ตรงกับไฟล์วิดีโอ (mp4) จึงเปิดเผยได้โดยไม่ต้องดาวน์โหลดสื่อ |
http://xxx/notimovie | สื่อจะถูกเปิดเผยเสมอหลังจากดาวน์โหลด | มันไม่ใช่ไฟล์เสียง/สื่อ ดังนั้นสื่อจึงเปิดเผยหลังจากดาวน์โหลด |
http://xxx/notisound.wav | สื่อจะถูกเปิดเผยเสมอหลังจากดาวน์โหลด | เนื่องจากมีนามสกุลที่ตรงกับไฟล์เสียง (wav) จึงเปิดเผยได้โดยไม่ต้องดาวน์โหลดสื่อ |
http://xxx/notiimage.jpg | สื่อจะถูกเปิดเผยเสมอหลังจากดาวน์โหลด | มันไม่ใช่ไฟล์เสียง/สื่อ ดังนั้นสื่อจึงเปิดเผยหลังจากดาวน์โหลด |
การตั้งค่าความปลอดภัยในการขนส่งแอป¶
นโยบายเริ่มต้นของ Apple อนุญาตให้การสื่อสารของเซิร์ฟเวอร์ที่ดำเนินการโดยแอปทั้งหมดใช้ https และ URL ที่ได้รับผ่านการแจ้งเตือนก็ได้รับผลกระทบจากนโยบายนี้เช่นกัน หากคุณต้องการสื่อสารโดยใช้โดเมน Http คุณจะต้องตั้งค่าการยกเว้น App Transport Security (ATS)
แม้ว่าแอปพลิเคชันจะมีการจัดการการยกเว้น ATS คุณจะต้องตั้งค่าการยกเว้น ATS ในส่วนขยายเพื่อใช้โดเมน http สำหรับ URL ที่ส่งผ่านการแจ้งเตือนแบบพุช
เมื่อสื่อไม่ได้ถูกส่งใน Unity¶
Hub connection error Error Domain=NSCocoaErrorDomain Code=4097 "connection to service named com.com2us.hivesdk.normal.freefull.apple.global.ios.universal.NotificationServiceExtension" UserInfo={NSDebugDescription=connection to service named com.com2us.hivesdk.normal.freefull.apple.global.ios.universal.NotificationServiceExtension}
ใน Unity อาจมีกรณีที่สื่อไม่ได้ถูกส่งในขณะที่แสดงบันทึกข้อผิดพลาดเช่นเดียวกับที่แสดงข้างต้น ในกรณีนี้ โปรดตรวจสอบว่าค่าทั้ง armv7 และ arm64 รวมอยู่ในสถาปัตยกรรมของเป้าหมายส่วนขยายที่สร้างขึ้นหรือไม่
ปุ่มดำเนินการดัน¶
ปุ่มดำเนินการดันเป็นปุ่มระบบที่ปรากฏเมื่อคุณกดค้างที่การแจ้งเตือนดัน ตามที่แสดงด้านล่าง โดยการเปิดเผยปุ่มเพิ่มเติมเหล่านี้ในการแจ้งเตือนดัน คุณสามารถกระตุ้นการมีส่วนร่วมของผู้ใช้ได้
ด้วย Hive SDK คุณสามารถติดตั้งปุ่มการกระทำแบบพุชได้อย่างง่ายดายด้วยการตั้งค่าที่เรียบง่าย
แอนดรอยด์ | ไอโอเอส |
---|---|
![]() | ![]() |
Note
ไม่จำเป็นต้องตั้งค่าเพิ่มเติมสำหรับปุ่มการกระทำการส่งใน Android SDK ดูรายละเอียดเกี่ยวกับการใช้ฟีเจอร์ปุ่มการกระทำได้ที่ คู่มือคอนโซล > การแจ้งเตือน สำหรับ iOS SDK คุณสามารถนำปุ่มการกระทำการส่งไปใช้ได้โดยใช้วิธี 'การใช้งานพื้นฐาน' หรือ 'การใช้งานขั้นสูง'
Warning
เมื่อใช้ปุ่มการกระทำการส่งข้อมูลร่วมกับ iOS Media Notification ใน iOS SDK ฟีเจอร์การแจ้งเตือนสื่ออาจทำงานไม่ถูกต้อง เมื่อส่งการแจ้งเตือน ให้ใช้ฟีเจอร์เพียงหนึ่งอย่างในแต่ละครั้ง—ไม่ว่าจะเป็น 'media URL' หรือ 'action push' หากใช้ทั้งสองอย่างพร้อมกัน จะมีเพียงภาพขนาดย่อของสื่อที่แสดงเมื่อได้รับ และผู้ดูขยายจะไม่ปรากฏเมื่อกดค้าง
การใช้งานพื้นฐาน (iOS)¶
SDK ของ Hive มีชุดปุ่มการกระทำแบบพุชที่ตั้งค่าไว้ล่วงหน้าซึ่งอิงจากรูปแบบที่ใช้บ่อย เช่น 'ยืนยัน', 'ปฏิเสธ' เป็นต้น การรวมปุ่มที่สร้างไว้ล่วงหน้านี้สามารถนำไปใช้ได้อย่างรวดเร็ว และคุณยังสามารถกำหนดและขยายชุดปุ่มการกระทำแบบกำหนดเองตามที่ต้องการ ชุดปุ่มการกระทำแบบพุชที่ตั้งค่าไว้ล่วงหน้ามีดังต่อไปนี้
* ยืนยัน
* ปิด
* ยืนยัน, ปิด
* ดำเนินการ, ยกเลิก
* ยอมรับทั้งหมด, ปิด
* ขอรับทันที, ปิด
* ซื้อ, ปฏิเสธ
* ขาย, ปฏิเสธ
* ยอมรับ, ปฏิเสธ, ถือ
| หมวดหมู่~(รหัสหมวดหมู่)~ | ชื่อปุ่ม~(รหัสการกระทำ)~ |
|:---:|:----|
|ยืนยัน~(INFO_CATEGORY)~|ยืนยัน~(CONFIRM_ID)~|
|ปิด~(CLOSE_CATEGORY)~|ปิด~(CLOSE_ID)~|
|ยืนยันการเลือก~(CONFIRM_CATEGORY)~|ยืนยัน~(CONFIRM_ID)~, ปิด~(CLOSE_ID)~|
|ดำเนินการ~(EXECUTE_CATEGORY)~|ดำเนินการ~(EXECUTE_ID)~, ยกเลิก~(CANCEL_ID)~|
|ยอมรับทั้งหมด~(ACCEPT_ALL_CATEGORY)~|ยอมรับทั้งหมด~(ACCEPT_ALL_ID)~, ปิด~(CLOSE_ID)~|
|ขอรับทันที~(ACCEPT_NOW_CATEGORY)~|ขอรับทันที~(ACCEPT_NOW_ID)~, ปิด~(CLOSE_ID)~|
|การตัดสินใจซื้อ~(PURCHASE_CATEGORY)~|ซื้อ~(PURCHASE_ID)~, ปฏิเสธ~(DECLINE_ID)~|
|คำขอขาย~(SALE_CATEGORY)~|ขาย~(SALE_ID)~, ปฏิเสธ~(DECLINE_ID)~|
|การตัดสินใจ~(ACCEPT_DECISION_CATEGORY)~|ยอมรับ~(ACCEPT_ID)~, ปฏิเสธ~(REJECT_ID)~, ถือ~(HOLDING_ID)~|
ไม่จำเป็นต้องมีโค้ดเพิ่มเติมเพื่อใช้ชุดปุ่มการกระทำแบบพุชเหล่านี้ แต่คุณต้องเพิ่มเป้าหมาย Notification Content Extension
ลงในโปรเจกต์ของคุณ ดู 'คู่มือการใช้งานชุดปุ่มการกระทำแบบพุช' ด้านล่างสำหรับสภาพแวดล้อมการพัฒนาของคุณเพื่อเพิ่มเป้าหมายและเปิดใช้งานปุ่มการกระทำแบบพุช
<summary>การใช้ชุดปุ่มการกระทำแบบพุชใน Unity</summary>
ใน Unity Editor ฟีเจอร์ **PostProcess** ของ SDK Hive จะจัดการการเพิ่มเป้าหมายและการสร้าง Info.plist โดยอัตโนมัติ เพียงแค่เลือกตัวเลือกในการใช้ปุ่มการกระทำแบบพุช; ไม่ต้องมีขั้นตอนด้วยตนเองอื่น ๆ
1. ในแถบเมนูของ Unity Editor ให้ไปที่ **Hive > Build project post process settings > iOS**
2. เปิดใช้งาน **Push Action Buttons**
<BR> รายการที่แสดงเมื่อเปิดใช้งานปุ่มจะแสดงตัวอย่างฟิลด์ `categories` จากไฟล์ *hive_push_actions.json* ที่ใช้ใน [การใช้งานขั้นสูง](#ios_1) หากคุณดำเนินการด้วยการใช้งานเริ่มต้นโดยไม่มีไฟล์นี้ จะมีการแสดง 'none'.
<summary>การใช้ปุ่ม Push Action Set ในสภาพแวดล้อมที่ไม่ใช่ Unity</summary>
หลังจากสร้างโปรเจ็กต์ Xcode (.xcodeproj) แล้ว ให้ทำตามขั้นตอนเหล่านี้:
1. ในการตั้งค่าโปรเจกต์ ให้คลิก **เพิ่มเป้าหมาย**
2. เลือก **ส่วนขยายเนื้อหาการแจ้งเตือน** และคลิก **ถัดไป**
3. ป้อน **ชื่อผลิตภัณฑ์** และกำหนดเป้าหมายแอปเกมหลักให้ **ฝังในแอปพลิเคชัน**
4. ในแท็บ **ทั่วไป** ของเป้าหมายแอปเกมหลัก ให้ยืนยันว่าชื่อผลิตภัณฑ์ได้ถูกเพิ่มไปยังโปรเจกต์แล้ว
5. ตรวจสอบไฟล์คลาสเทมเพลตที่สร้างขึ้นโดยอัตโนมัติ~(NotificationContentViewController.swift)~ ภายใต้เส้นทาง 'ชื่อผลิตภัณฑ์' และป้อนตามที่แสดงด้านล่าง

เมื่อคุณได้ใช้ปุ่มการกระทำแบบผลักที่ตั้งค่าในสภาพแวดล้อมการพัฒนาของคุณแล้ว ให้ระบุการกระทำเมื่อส่งการผลักจากคอนโซล.
เมื่อระบุการกระทำ ให้ใช้หมวดหมู่และตัวระบุการกระทำจากรายการรายละเอียดข้างต้น.
สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับการตั้งค่าคอนโซล โปรดดูที่คู่มือคอนโซล.
การใช้งานขั้นสูง (iOS)¶
กำหนดค่าของ actions
และ categories
ในไฟล์ hive_push_actions.json หลังจากกำหนดแล้ว ให้รวมไฟล์ hive_push_actions.json ในเป้าหมายของคุณและสร้างแอป เมื่อแอปทำงาน SDK Hive จะทำการวิเคราะห์ไฟล์โดยอัตโนมัติและลงทะเบียนการกระทำและหมวดหมู่ในศูนย์การแจ้งเตือน
ด้านล่างนี้เป็นตัวอย่างของไฟล์ hive_push_actions.json
ตัวอย่าง hive_push_actions.json
{
"actions": {
"ACCEPT_ALL_ID": { ... },
"ACCEPT_ID": { ... },
"ACCEPT_NOW_ID": { ... },
"CANCEL_ID": { ... },
"CLOSE_ID": { ... },
"CONFIRM_ID": { ... },
"DECLINE_ID": { ... },
"EXECUTE_ID": { ... },
"HOLDING_ID": { ... },
"PURCHASE_ID": { ... },
"REJECT_ID": { ... },
"SALE_ID": { ... }
},
"categories": {
"INFO_CATEGORY": ["CONFIRM_ID"],
"CLOSE_CATEGORY": ["CLOSE_ID"],
"CONFIRM_CATEGORY": ["CONFIRM_ID", "CLOSE_ID"],
"EXECUTE_CATEGORY": ["EXECUTE_ID", "CANCEL_ID"],
"ACCEPT_ALL_CATEGORY": ["ACCEPT_ALL_ID", "CLOSE_ID"],
"ACCEPT_NOW_CATEGORY": ["ACCEPT_NOW_ID", "CLOSE_ID"],
"PURCHASE_CATEGORY": ["PURCHASE_ID", "DECLINE_ID"],
"SALE_CATEGORY": ["SALE_ID", "DECLINE_ID"]
}
}
หมายเหตุสำหรับการเขียนไฟล์:
- จำนวนปุ่มสูงสุดต่อหมวดหมู่ (ชุด) คือ 3.
- ตัวอย่างข้างต้นกำหนดชุดปุ่มเริ่มต้น สำหรับปุ่มการกระทำที่กำหนดเอง ห้ามใช้ตัวระบุซ้ำ; ใช้สตริงที่ไม่ซ้ำกันและแยกแยะได้.
- การสนับสนุนหลายภาษาจะตาม ภาษาของเกม และคุณสามารถป้อนได้สูงสุด 16 ภาษา ที่รองรับโดย Hive SDK. ภาษาอังกฤษ (
"en"
) เป็นค่าที่จำเป็นสำหรับสตริงหลายภาษา.
Note
Unity PostProcess ได้รับการสนับสนุน หากคุณเพิ่มไฟล์ hive_push_actions.json ไปยังเส้นทางเดียวกับ hive_config.xml ในโปรเจกต์ Unity ของคุณ มันจะถูกเพิ่มโดยอัตโนมัติไปยังเป้าหมายแอปเมื่อสร้างโปรเจกต์ Xcode
Warning
หลังจากเขียนไฟล์แล้ว ให้เพิ่มคีย์จากฟิลด์ "categories" ในไฟล์ไปยัง UNNotificationExtensionCategory
ใน Info.plist ของ Notification Content Extension.
ใน Unity จะทำโดยอัตโนมัติด้วยการวิเคราะห์ไฟล์