คลาสการกำหนดค่า¶
ใช้คลาส Configuration คุณสามารถ ดึงข้อมูล (get) หรือ เปลี่ยนแปลง (set) ค่าคอนฟิกในระหว่างการทำงานของแอปเกมได้ ตัวอย่างเช่น เมื่อดึงข้อมูลเซิร์ฟเวอร์เกม ให้ใช้วิธี getServerId() และเมื่อเปลี่ยนแปลง ให้ใช้วิธี setServerId()
เป็นตัวอย่างของการใช้คลาส Configuration คุณสามารถเปลี่ยนการตั้งค่า zone ของผู้ใช้ระหว่างการทำงานของแอปเกมด้วยคลาส Configuration.
API Reference: hive.Configuration.setZone
API Reference: hive::Configuration::setZone
API Reference: Configuration.setZone
API Reference: Configuration.setZone
API Reference: ConfigurationInterface.setZone
API Reference: HIVEConfiguration:setZone
Note
เมธอด setZone ของคลาส Configuration จะต้องถูกเรียกก่อนที่จะเรียกใช้ฟังก์ชัน setup เพื่อให้ทำงานได้อย่างถูกต้อง。
สถานการณ์การใช้งานของคลาสการกำหนดค่า¶
หากคุณต้องการเปลี่ยนการตั้งค่า SDK ขณะแอปเกมกำลังทำงาน นี่คือกรณีต่างๆ
ก่อนการเริ่มต้น SDK¶
ก่อนที่จะเริ่มต้น SDK ให้สะท้อนเซิร์ฟเวอร์เกมหรือภาษาของเกมในตั้งค่า
หลังจากการเริ่มต้น SDK และก่อนหน้าต่างป๊อปอัพการบำรุงรักษาเซิร์ฟเวอร์¶
นี่คือกรณีที่ผู้ใช้เลือกเซิร์ฟเวอร์เกมก่อนที่จะแสดงป๊อปอัปการบำรุงรักษาเซิร์ฟเวอร์หลังจากเริ่มต้น SDK หลังจากเริ่มต้น SDK แล้ว UI การเลือกเซิร์ฟเวอร์เกมจะถูกเปิดเผย และเซิร์ฟเวอร์เกมที่ผู้ใช้เลือกจะถูกสะท้อนในการตั้งค่า หลังจากดำเนินการกระบวนการนี้แล้ว ป๊อปอัปการบำรุงรักษาเซิร์ฟเวอร์จะถูกแสดง
ตัวอย่าง: UI การเลือกเซิร์ฟเวอร์เกม 
หลังจากเข้าสู่เกม¶
หากผู้ใช้เปลี่ยนภาษาของเกมหรือเซิร์ฟเวอร์เกมในการตั้งค่าเกมหลังจากเข้าสู่เกมแล้ว พวกเขาสามารถกำหนดค่าผู้ใช้สำหรับการเปลี่ยนเซิร์ฟเวอร์เกมหรือภาษาของเกมในการตั้งค่าเกมหรือเมนูอื่น ๆ ขณะเล่นเกม หากผู้ใช้เปลี่ยนเซิร์ฟเวอร์หรือภาษาโดยใช้ผู้ใช้ที่กำหนดค่านี้ ข้อมูลนี้จะต้องสะท้อนในการตั้งค่าด้วย
สถานการณ์อื่น ๆ¶
เปลี่ยนค่าที่ตั้งไว้ก่อนหน้านี้เนื่องจากสถานการณ์ต่างๆ เช่น การเปลี่ยนแปลงข้อมูลเกมขึ้นอยู่กับการวางแผนเกมและสถานการณ์อื่นๆ
Info
คุณไม่สามารถเปลี่ยนการตั้งค่าเวลาทำงานด้วยคลาส Configuration และยังมี รายการที่สามารถดึงมาได้เฉพาะ เท่านั้น
ตัวอย่างการใช้คลาส Configuration¶
นี่คือคู่มือเพิ่มเติมเกี่ยวกับการใช้คลาส Configuration
การตั้งค่าธีม¶
คุณสามารถเปิดเผยธีมมืดโดยใช้ Configuration.setHiveTheme
API Reference: hive.Configuration.setHiveTheme
API Reference: hive::Configuration::setHiveTheme
เอกสารอ้างอิง API: hiveTheme
API Reference: Configuration.setHiveTheme
API Reference: HIVEConfiguration:setHiveTheme
API Reference: HIVEConfiguration:setHiveTheme
คลาสการกำหนดค่าและ hive_config.xml ไฟล์¶
การเปลี่ยนแปลงการตั้งค่า (การตั้งค่าเวลาทำงาน) ด้วยวิธีการในคลาส Configuration จะทำการเขียนทับค่าที่ตั้งไว้ใน hive_config.xml (การตั้งค่าเวลาสร้าง) กล่าวอีกนัยหนึ่ง ค่าที่ตั้งโดยคลาส Configuration จะมีความสำคัญสูงกว่า อย่างไรก็ตาม ค่าที่ตั้งโดยคลาส Configuration จะได้รับการจัดลำดับความสำคัญภายใน SDK และค่าที่มีอยู่ในไฟล์ hive_config.xml จะไม่ถูกเปลี่ยนแปลง
ตัวอย่างเช่น แม้ว่าคุณจะตั้งค่า zone เป็น sandbox ในการกำหนดค่าของ zone ข้างต้นใน hive_config.xml หลังจากเปลี่ยนค่าดังกล่าวเป็น real ด้วยคลาส Configuration และเริ่มต้น SDK แล้ว SDK จะทำงานตาม real อย่างไรก็ตาม zone ใน hive_config.xml จะยังคงเป็น sandbox
คลาสการกำหนดค่าที่สามารถดึงข้อมูลได้¶
วิธีการของคลาสการกำหนดค่าช่วยให้คุณสามารถเรียกคืนค่า (get) สำหรับการตั้งค่าที่ มีเฉพาะ ตามที่ระบุไว้ด้านล่างนี้
| รายการ | OS | คุณสมบัติ SDK | คำอธิบาย | ค่าเริ่มต้น SDK |
|---|---|---|---|---|
| hiveSDKVersion | Android, iOS, Windows | SDK ทั่วไป | เวอร์ชัน SDK ของ Hive | ค่าเวอร์ชัน HiveSDK ที่ใช้ |
| referenceSDKVersion | Android, iOS, Windows | SDK ทั่วไป | เวอร์ชัน SDK ที่อ้างอิงโดย SDK ของ Hive | ข้อมูลไลบรารีและเวอร์ชันที่อ้างอิงโดย HiveSDK ที่ใช้ |
| hiveCountry | Android, iOS, Windows | SDK ทั่วไป | รหัสประเทศที่กำหนดโดยเซิร์ฟเวอร์ SDK ของ Hive | ข้อมูลที่ส่งมาจากเซิร์ฟเวอร์ HiveSDK |
| appId | Android, iOS, Windows | SDK ทั่วไป | ตัวระบุการสร้างเกม | X |
| serverId | Android, iOS, Windows | SDK ทั่วไป | ตัวระบุเซิร์ฟเวอร์เกมแต่ละตัวที่สามารถตรวจสอบได้เมื่อดำเนินการเซิร์ฟเวอร์ในภูมิภาคในเกม ต้องเขียนตามนโยบายตัวระบุของ Hive | ว่าง |
| zone | Android, iOS, Windows | SDK ทั่วไป | เซิร์ฟเวอร์ที่ไคลเอนต์ Hive จะเชื่อมต่อ
| REAL |
| useLog | Android, iOS, Windows | SDK ทั่วไป | ว่าจะเปิดใช้งานบันทึกสำหรับการดำเนินการภายในของไคลเอนต์ Hive หรือไม่ เมื่อเปิดใช้งานบันทึก จะถูกส่งออกไปยังหน้าจอเครื่องมือพัฒนา
| false |
| channel | Android, iOS, Windows | SDK ทั่วไป | แพลตฟอร์มบริการการเข้าสู่ระบบและการสนับสนุนในแอปที่ใช้ในแอปเกม เมื่อเข้าสู่ระบบแพลตฟอร์มโซเชียลภายนอกหรือใช้การซื้อในแอปผ่าน SDK จะตรงกับ C2S ใช้สำหรับการเก็บข้อมูลการวิเคราะห์ SDK
| C2S |
| market | Android, iOS, Windows | SDK ทั่วไป | ตลาดสำหรับการประมวลผลการชำระเงินการซื้อในแอป ใช้สำหรับการเก็บข้อมูลการวิเคราะห์ SDK
| ว่าง |
| httpConnectTimeout | Android, iOS, Windows | SDK ทั่วไป | ระยะเวลาหมดอายุ (เป็นวินาที) สำหรับการเชื่อมต่อ HTTP ที่ใช้ภายในโดยไคลเอนต์ Hive ค่าเริ่มต้นถูกตั้งไว้ที่ 8 วินาที และการเปลี่ยนแปลงค่านี้จะถูกห้ามเว้นแต่ในกรณีพิเศษ | 8 (หน่วย: วินาที) |
| httpReadTimeout | Android, iOS, Windows | SDK ทั่วไป | ระยะเวลาหมดอายุ (เป็นวินาที) สำหรับการอ่าน HTTP ที่ใช้ภายในโดยไคลเอนต์ Hive ค่าเริ่มต้นถูกตั้งไว้ที่ 8 วินาที และการเปลี่ยนแปลงค่านี้จะถูกห้ามเว้นแต่ในกรณีพิเศษ (เช่น การหน่วงเวลาของเครือข่ายหรือการตัดการเชื่อมต่อที่ได้รับการยืนยันว่าขัดขวางการเก็บบันทึกปกติ) | 8 (หน่วย: วินาที) |
| gameLanguage | Android, iOS, Windows | SDK ทั่วไป | ภาษาเกมที่ตั้งค่าใน SDK | การตั้งค่าภาษาอุปกรณ์ |
| ageGateU13 | Android, iOS, Windows | Provisioning | ว่าจะใช้ COPPA ageGateU13 หรือไม่ หากต้องการใช้ COPPA ageGateU13 ใน SDK ค่านี้ต้องถูกตั้งค่าเป็น true หลังจากลงทะเบียนเงื่อนไข COPPA ใน Hive Console และก่อนที่จะเริ่มต้น SDK หากไม่ต้องการใช้ COPPA ageGateU13 ค่านี้ต้องถูกตั้งค่าเป็น false หลังจากลงทะเบียนเงื่อนไขอื่นที่ไม่ใช่ COPPA ใน Hive Console และก่อนที่จะเริ่มต้น SDK
| false |
| agreementDetermineBase | Android, iOS | Provisioning | กำหนดเกณฑ์ในการขอความเห็นชอบต่อเงื่อนไข. คุณสามารถเลือกได้ทั้ง device หรือ account โดยค่าเริ่มต้นคือ device.
| device |
| enableGameController | Windows | SDK Common | ฟีเจอร์ที่ตั้งค่าว่าจะเปิดใช้งาน 'เกมคอนโทรลเลอร์' ใน UI ที่จัดเตรียมโดย SDK หรือไม่.
get | true |
| usePrivateBrowsingForAuth | Windows | Authentication | กำหนดว่าจะใช้โหมดไม่ระบุตัวตนในระหว่างการตรวจสอบสิทธิ์ Google Login หรือไม่.
| true |
| maxGameLogSize | Android, iOS, Windows | Analytics | จำนวนสูงสุดของเกมล็อกที่จัดเก็บเป็นไฟล์ข้อมูลที่ไม่มีโครงสร้าง ค่าเริ่มต้นคือ 50 และค่าดังกล่าวจะถูกเก็บรวบรวมโดยเซิร์ฟเวอร์ Analytics ของ SDK. | 50 |
| analyticsSendLimit | Android, iOS, Windows | Analytics | จำนวนสูงสุดของล็อกที่จะส่งต่อรอบการส่งล็อก Analytics หนึ่งครั้ง ค่าเริ่มต้นคือ 5. | 5 |
| analyticsQueueLimit | Android, iOS, Windows | Analytics | จำนวนสูงสุดของล็อก Analytics ที่สามารถอยู่ในคิวได้ ค่าเริ่มต้นคือ 50. | 50 |
| analyticsSendCycle | Android, iOS, Windows | Analytics | รอบการส่งล็อก Analytics สามารถตั้งค่าเป็นวินาที และล็อก Analytics จะถูกส่งทุกครั้งที่ตั้งค่า รอบค่าเริ่มต้นคือ 1 วินาที. | 1 |
| hiveTheme | Android, iOS, Windows | SDK Common | คุณสามารถตั้งค่าให้ใช้ธีมเป็นสไตล์สว่างหรือมืด. | HiveTheme.HiveLight |
การตั้งค่าที่เปลี่ยนแปลงได้ด้วยคลาส Configuration¶
รายการที่สามารถเปลี่ยนแปลงได้ (set) ด้วยวิธีการของคลาส Configuration มีดังนี้ รายการที่จำเป็นต้องกรอกจะต้องถูกกรอก ขณะที่รายการที่ไม่จำเป็นสามารถกรอกได้ตามต้องการ หากไม่กรอกรายการที่ไม่จำเป็น จะทำงานด้วยค่าพื้นฐานของ SDK แม้ว่าจะเป็นรายการที่จำเป็น หากได้กรอกข้อมูลแล้วใน hive_config.xml และไม่จำเป็นต้องเปลี่ยนแปลงในระหว่างการทำงาน ก็ไม่จำเป็นต้องเปลี่ยนแปลงด้วยคลาส Configuration
Warning
serverId เป็นค่าที่ต้องตั้งค่าเฉพาะในระหว่างการทำงานเท่านั้น ดังนั้นค่าดังกล่าวต้องตั้งค่าผ่านคลาส Configuration
| รายการ | OS | ฟีเจอร์ SDK | คำอธิบาย | จำเป็น | ค่าเริ่มต้น SDK |
|---|---|---|---|---|---|
| appId | Android, iOS, Windows | SDK Common | ตัวระบุการสร้างเกม | X | * Android: ชื่อแพ็กเกจหลักของแอป * iOS: Bundle ID |
| serverId | Android, iOS, Windows | SDK Common | ตัวระบุเซิร์ฟเวอร์เกมแต่ละตัวที่สามารถตรวจสอบได้เมื่อดำเนินการเซิร์ฟเวอร์ในภูมิภาคในเกม ต้องเขียนตามนโยบายตัวระบุ Hive | O | ว่าง |
| zone | Android, iOS, Windows | SDK Common | เซิร์ฟเวอร์ที่ไคลเอนต์ Hive จะเชื่อมต่อ
| X | REAL |
| useLog | Android, iOS, Windows | SDK Common | เปิดใช้งานบันทึกสำหรับการดำเนินการภายในของไคลเอนต์ Hive หรือไม่ เมื่อเปิดใช้งานบันทึก จะถูกส่งออกไปยังหน้าจอเครื่องมือพัฒนา
| X | false |
| channel | Android, iOS, Windows | SDK Common | แพลตฟอร์มบริการสนับสนุนการเข้าสู่ระบบและในแอปที่ใช้ในแอปเกม เมื่อเข้าสู่ระบบแพลตฟอร์มโซเชียลภายนอกหรือใช้การซื้อในแอปผ่าน SDK จะตรงกับ C2S ใช้สำหรับการเก็บข้อมูลการวิเคราะห์ SDK
| O | C2S |
| market | Android, iOS, Windows | SDK Common | ตลาดสำหรับการประมวลผลการชำระเงินการซื้อในแอป ใช้สำหรับการเก็บข้อมูลการวิเคราะห์ SDK
| O | ว่าง |
| httpConnectTimeout | Android, iOS, Windows | SDK Common | ระยะเวลาหมดเวลาสำหรับการเชื่อมต่อ HTTP (เป็นวินาที) ที่ใช้ภายในโดยไคลเอนต์ Hive ค่าเริ่มต้นถูกตั้งไว้ที่ 8 วินาที และการเปลี่ยนแปลงค่านี้ถูกห้ามเว้นแต่ในกรณีพิเศษ | X | 8 (หน่วย: วินาที) |
| httpReadTimeout | Android, iOS, Windows | SDK Common | ระยะเวลาหมดเวลาสำหรับการอ่าน HTTP (เป็นวินาที) ที่ใช้ภายในโดยไคลเอนต์ Hive ค่าเริ่มต้นถูกตั้งไว้ที่ 8 วินาที และการเปลี่ยนแปลงค่านี้ถูกห้ามเว้นแต่ในกรณีพิเศษ (เช่น ความล่าช้าของเครือข่ายหรือการตัดการเชื่อมต่อที่ได้รับการยืนยันว่าเป็นอุปสรรคต่อการเก็บบันทึกปกติ) | X | 8 (หน่วย: วินาที) |
| gameLanguage | Android, iOS, Windows | SDK Common | ภาษาเกมที่ตั้งค่าใน SDK | X | การตั้งค่าภาษาอุปกรณ์ |
| ageGateU13 | Android, iOS, Windows | Provisioning | ใช้ COPPA ageGateU13 หรือไม่ เพื่อใช้ COPPA ageGateU13 ใน SDK ค่านี้ต้องถูกตั้งค่าเป็น true หลังจากลงทะเบียนข้อกำหนด COPPA ใน Hive Console และก่อนที่จะเริ่มต้น SDK หากไม่ต้องการใช้ COPPA ageGateU13 ค่านี้ต้องถูกตั้งค่าเป็น false หลังจากลงทะเบียนข้อกำหนดอื่นที่ไม่ใช่ COPPA ใน Hive Console และก่อนที่จะเริ่มต้น SDK
| X | false |
| agreementDetermineBase | Android, iOS | Provisioning | กำหนดเกณฑ์ในการขอความเห็นชอบต่อข้อกำหนด คุณสามารถเลือกได้ทั้ง device หรือ account โดยค่าเริ่มต้นคือ device
| X | device |
| enableGameController | Windows | SDK Common | ฟีเจอร์ที่ตั้งค่าการเปิดใช้งาน 'เกมคอนโทรลเลอร์' ใน UI ที่จัดเตรียมโดย SDK.
get. | X | true |
| usePrivateBrowsingForAuth | Windows | Authentication | กำหนดว่าจะใช้โหมดไม่ระบุตัวตนในระหว่างการตรวจสอบสิทธิ์ Google Login หรือไม่.
| X | true |
| maxGameLogSize | Android, iOS, Windows | Analytics | จำนวนสูงสุดของเกมล็อกที่เก็บเป็นไฟล์ข้อมูลที่ไม่มีโครงสร้าง ค่าตั้งต้นคือ 50 และค่าดังกล่าวจะถูกเก็บโดยเซิร์ฟเวอร์ Analytics ของ SDK. | X | 50 |
| analyticsSendLimit | Android, iOS, Windows | Analytics | จำนวนสูงสุดของล็อกที่จะส่งต่อรอบการส่งล็อก Analytics หนึ่งรอบ ค่าตั้งต้นคือ 5. | X | 5 |
| analyticsQueueLimit | Android, iOS, Windows | Analytics | จำนวนสูงสุดของล็อก Analytics ที่สามารถรอในคิว ค่าตั้งต้นคือ 50. | X | 50 |
| analyticsSendCycle | Android, iOS, Windows | Analytics | นี่คือรอบการส่งล็อก Analytics สามารถตั้งค่าเป็นวินาที และล็อก Analytics จะถูกส่งในช่วงเวลาที่กำหนด ค่าตั้งต้นคือ 1 วินาที. | X | 1 |
| hiveTheme | Android, iOS, Windows | SDK Common | คุณสามารถตั้งค่าให้ใช้ธีมเป็นสไตล์สว่างหรือมืด. | X | HiveTheme.HiveLight |
Note
เมื่อใช้ COPPA ageGateU13 จะมีเพียง device(device)-based terms consent popup เท่านั้นที่สามารถแสดงได้.
เมื่อใช้ COPPA ageGateU13 หากผู้ใช้ตอบว่าตนมีอายุ 13 ปีขึ้นไปในระหว่างกระบวนการยินยอมเงื่อนไข SDK จะไม่ใช้ COPPA ageGateU13 กับผู้ใช้นั้น อย่างไรก็ตาม ค่าที่ตั้งไว้ใน hive_config.xml (true) เองจะไม่เปลี่ยนแปลง
รายการที่ไม่รองรับ¶
ต่อไปนี้คือวิธีการของคลาส Configuration ที่ไม่รองรับอีกต่อไป
| รายการ | OS | คุณสมบัติ SDK | คำอธิบาย | จำเป็น | ค่าเริ่มต้น SDK |
|---|---|---|---|---|---|
| permissions | Android | SDK Common | (เลิกใช้ตั้งแต่ v4.16.3) ว่าต้องการขอสิทธิ์ที่ตั้งโดยประเภทสิทธิ์หรือไม่ ชื่อสิทธิ์เฉพาะสำหรับฟีเจอร์ Android | X | ไม่มี |
| hivePermissionViewOn | Android | SDK Common | (เลิกใช้ตั้งแต่ v4.162) ว่าจะแสดงป๊อปอัปการแจ้งเตือนสิทธิ์ SDK หรือไม่
| X | true |
| company | Android, iOS, Windows | SDK Common | (เลิกใช้ตั้งแต่ v4.23.0) ชื่อของบริษัทที่เผยแพร่เกม | X | ไม่มี |
