แพ็กเกจ Google สำหรับ Unity มี 2 รูปแบบที่แตกต่างกัน ดังนี้
- แพ็กเกจเนื้อหา:
- มีนามสกุล
.unitypackage - ติดตั้งลงในไดเรกทอรี
Assetsของโปรเจ็กต์ - นำเข้าใน Unity 5 ขึ้นไปได้
- โดยทั่วไปจะมีแพ็กเกจที่ต้องใช้ร่วมกัน
- มีนามสกุล
- แพ็กเกจ Unity Package Manager (UPM):
- มีนามสกุล
.tgz - ติดตั้งลงในไดเรกทอรี
Packagesของโปรเจ็กต์ - นำเข้าใน Unity 2018.4 ขึ้นไปได้
- อ้างอิงแพ็กเกจที่ต้องใช้ร่วมกันซึ่งต้องติดตั้งแยกกัน
- มีนามสกุล
หน้า แพ็กเกจ จะมีไฟล์ .unitypackage ล่าสุด
สำหรับแพ็กเกจทั้งหมดที่พร้อมใช้งาน และไฟล์ .tgz สำหรับแพ็กเกจบางรายการ
หน้า เก็บถาวร จะมีไฟล์ .unitypackage และ .tgz สำหรับ
แพ็กเกจทุกเวอร์ชัน
ด้านล่างนี้เป็นวิธีการติดตั้งแพ็กเกจทั้ง 2 ประเภท รวมถึงวิธีการย้ายข้อมูลเพื่อเปลี่ยนจากแพ็กเกจประเภทหนึ่งไปเป็นอีกประเภทหนึ่ง
เมื่อคุ้นเคยกับตัวเลือกการติดตั้งเหล่านี้แล้ว โปรดดู วิธีการเพิ่มเติมเฉพาะผลิตภัณฑ์สำหรับ Firebase
การนำเข้าแพ็กเกจโดยใช้ OpenUPM
คุณสามารถเพิ่มแพ็กเกจภายนอกลงในโปรเจ็กต์ Unity ได้โดยใช้รีจิสทรี OpenUPM OpenUPM มีปลั๊กอินและ SDK ที่มีประโยชน์มากมาย เช่น ปลั๊กอิน Google Play Integrity ซึ่งช่วยปกป้องแอปของคุณจากการฉ้อโกงและการละเมิด
ตัวอย่างวิธีเพิ่มปลั๊กอิน Google Play Integrity โดยใช้ OpenUPM
OpenUPM-CLI
หากติดตั้ง OpenUPM CLI ไว้ คุณสามารถติดตั้งรีจิสทรี OpenUPM ได้ด้วยคำสั่งต่อไปนี้
openupm add com.google.play.integrityOpenUPM
เปิดการตั้งค่าเครื่องมือจัดการแพ็กเกจ โดยเลือกตัวเลือกเมนู Unity Edit > Project Settings > Package Manager
เพิ่ม OpenUPM เป็นรีจิสทรีที่มีขอบเขตในหน้าต่างเครื่องมือจัดการแพ็กเกจโดยทำดังนี้
Name: package.openupm.com URL: https://package.openupm.com Scopes: com.google.external-dependency-manager com.google.play.common com.google.play.core com.google.play.integrityเปิดเมนูเครื่องมือจัดการแพ็กเกจโดยเลือกตัวเลือกเมนู Unity Window > Package Manager
ตั้งค่าเมนูแบบเลื่อนลงขอบเขตเครื่องมือจัดการให้เลือก My Registries

เลือกแพ็กเกจ Google Play Integrity plugin for Unity จากรายการแพ็กเกจ แล้วกด Install
การนำเข้าแพ็กเกจเนื้อหาด้วยไฟล์ .unitypackage
นำเข้าไฟล์ .unitypackage โดยเลือกตัวเลือกเมนู Unity
Assets > Import package > Custom Package แล้วนำเข้าทุกรายการ
ซึ่งจะเพิ่มเนื้อหาแพ็กเกจลงในโปรเจ็กต์ในไดเรกทอรี Assets
การนำเข้าแพ็กเกจ UPM ด้วยไฟล์ .tgz (2018.4 ขึ้นไป)
นำเข้าไฟล์ .tgz ลงในโปรเจ็กต์โดยใช้วิธีใดวิธีหนึ่งต่อไปนี้
manifest.json
- สร้างโฟลเดอร์ใหม่ข้างโฟลเดอร์
Packagesของโปรเจ็กต์ แล้วตั้งชื่อว่าGooglePackages - วางไฟล์
.tgzลงในโฟลเดอร์นั้น - ใช้เครื่องมือแก้ไขข้อความเพื่อเปิด
Packages/manifest.jsonในโฟลเดอร์โปรเจ็กต์ Unity เพิ่มรายการสำหรับแต่ละแพ็กเกจที่ต้องการติดตั้ง โดยจับคู่ชื่อแพ็กเกจกับตำแหน่งบนดิสก์ที่สัมพันธ์กับไฟล์
Packages/manifest.jsonอย่าลืมเพิ่มfile:ลงในเส้นทางไฟล์.tgzตัวอย่างเช่น หากคุณติดตั้งcom.google.firebase.storageและแพ็กเกจที่ต้องใช้ร่วมกัน ไฟล์ manifest.json จะมีลักษณะดังนี้{ "dependencies": { "com.google.external-dependency-manager": "file:../GooglePackages/com.google.external-dependency-manager-1.2.164.tgz", "com.google.firebase.app": "file:../GooglePackages/com.google.firebase.app-7.1.0.tgz", "com.google.firebase.auth": "file:../GooglePackages/com.google.firebase.auth-7.1.0.tgz", "com.google.firebase.storage": "file:../GooglePackages/com.google.firebase.storage-7.1.0.tgz", // com.unity package entries... } }บันทึกไฟล์ manifest.json
เมื่อ Unity กลับมาทำงานอีกครั้ง ระบบจะโหลด manifest.json อีกครั้งและนำเข้าแพ็กเกจที่เพิ่มใหม่
Unity บางเวอร์ชันเก่าไม่รองรับไฟล์ .tgz ใน manifest.json
ในกรณีนี้ คุณควรทำดังนี้
- คลายการบีบอัดไฟล์
.tgz - วางโฟลเดอร์ที่แยกออกมาในโฟลเดอร์
GooglePackages แก้ไข manifest.json ให้ใช้เส้นทางไปยังโฟลเดอร์ที่แยกออกมาแทนไฟล์
.tgzดังนี้{ "dependencies": { "com.google.external-dependency-manager": "file:../GooglePackages/com.google.external-dependency-manager-1.2.164", "com.google.firebase.app": "file:../GooglePackages/com.google.firebase.app-7.1.0", "com.google.firebase.auth": "file:../GooglePackages/com.google.firebase.auth-7.1.0", "com.google.firebase.storage": "file:../GooglePackages/com.google.firebase.storage-7.1.0", // com.unity package entries... } }
UI ของเครื่องมือจัดการแพ็กเกจ
- เปิดหน้าต่างเครื่องมือจัดการแพ็กเกจของ Unity
คลิกไอคอน
+ที่มุมซ้ายบนของหน้าต่างเครื่องมือจัดการแพ็กเกจ แล้วเลือกAdd package from tarballเพื่อเปิดโปรแกรมเรียกดูไฟล์
เลือก tarball ที่ต้องการในโปรแกรมเรียกดูไฟล์
Unity บางเวอร์ชันเก่าไม่รองรับการเพิ่ม tarball โดยตรง ในกรณีนี้ คุณจะต้องทำดังนี้
- คลายการบีบอัดไฟล์
.tgz คลิกไอคอน
+ที่มุมซ้ายบนของหน้าต่างเครื่องมือจัดการแพ็กเกจ แล้วเลือกAdd package from diskเพื่อเปิดโปรแกรมเรียกดูไฟล์
เลือกโฟลเดอร์ที่แยกออกมาในโปรแกรมเรียกดูไฟล์
อย่าลืมนำเข้าไฟล์ .tgz สำหรับแพ็กเกจที่ต้องใช้ร่วมกันด้วย
ซึ่งคุณจะดูรายการได้ในหน้าเก็บถาวรในส่วนของ
แพ็กเกจที่ต้องการ
ตัวอย่างเช่น หากคุณติดตั้ง com.google.firebase.storage คุณจะต้องติดตั้งไฟล์ .tgz เหล่านี้ตามลำดับต่อไปนี้
- เครื่องมือจัดการทรัพยากร Dependency ภายนอก (
com.google.external-dependency-manager) - Firebase Core (
com.google.firebase.app) - Firebase Auth (
com.google.firebase.auth) - พื้นที่เก็บข้อมูลของ Firebase (
com.google.firebase.storage)
หากต้องการเพิ่มไฟล์ .tgz ทั้งหมดพร้อมกันโดยไม่ต้องกังวล
เรื่องลำดับ ให้ทำตามวิธีการใน
แท็บ manifest.json
การควบคุมเวอร์ชัน
หากคุณใช้ซอฟต์แวร์ควบคุมเวอร์ชันเพื่อจัดการไฟล์โปรเจ็กต์ เรา
ขอแนะนำให้เพิ่มไฟล์ .tgz ที่เกี่ยวข้องลงในการควบคุมเวอร์ชัน คุณสามารถแก้ไข
`manifest.json` ของโปรเจ็กต์ด้วยตนเอง (ดู
วิธีการด้านบน) และอ้างอิงไฟล์ `.tgz` ในเครื่องโดยใช้
เส้นทางที่สัมพันธ์กันmanifest.json.tgz
หากใช้ Git เราขอแนะนำ
Git Large File Storage (LFS)
สำหรับจัดการไฟล์ขนาดใหญ่ .tgz
การย้ายข้อมูลจากแพ็กเกจ UPM ไปเป็นแพ็กเกจเนื้อหา
ในบางกรณี คุณอาจต้องการเปลี่ยนจากการใช้ Unity Package Manager เพื่อจัดการแพ็กเกจ Google ไปเป็นการติดตั้งแพ็กเกจในโฟลเดอร์ Assets
ตรวจสอบว่าได้นำแพ็กเกจ Google ทั้งหมดออกจาก Unity Package Manager แล้วโดยใช้วิธีใดวิธีหนึ่งต่อไปนี้
UI ของเครื่องมือจัดการแพ็กเกจ
- เปิดหน้าต่างเครื่องมือจัดการแพ็กเกจของ Unity
เลือก
In Projectในเมนูแบบเลื่อนลงที่ด้านซ้ายบน
พิมพ์
com.googleในแถบค้นหาเพื่อกรองแพ็กเกจ Google
คลิกชื่อแพ็กเกจแต่ละรายการ แล้วคลิก
Remove
manifest.json
- ใช้เครื่องมือแก้ไขข้อความเพื่อเปิด
Packages/manifest.jsonในโฟลเดอร์โปรเจ็กต์ Unity - ตรวจสอบว่ามีแพ็กเกจจาก Google อยู่ในส่วน "dependencies" หรือไม่ ชื่อแพ็กเกจควรเริ่มต้นด้วย "com.google" เช่น "com.google.firebase.app"
- ลบบรรทัดเหล่านั้นแล้วบันทึกไฟล์ JSON
- เมื่อ Unity กลับมาทำงานอีกครั้ง ระบบจะโหลดไฟล์
manifest.jsonอีกครั้งและนำแพ็กเกจที่ลบออก
เมื่อถอนการติดตั้งแพ็กเกจเหล่านั้นออกจาก Unity Package Manager แล้ว คุณจะ
ดาวน์โหลดและนำเข้าไฟล์ .unitypackage ที่ใช้แทนได้จากหน้าเก็บถาวร
การย้ายข้อมูลจากแพ็กเกจเนื้อหาไปเป็นแพ็กเกจ UPM
ในบางกรณี คุณอาจต้องการเปลี่ยนจากการติดตั้งผลิตภัณฑ์ในโครงสร้าง Assets ไปเป็นการติดตั้งและติดตามผลิตภัณฑ์ด้วย Unity Package Manager
หากไม่แน่ใจว่าใช้วิธีการติดตั้งใด ให้ตรวจสอบใน UI ของ Unity ว่าแพ็กเกจ Google ที่ต้องการปรากฏในแท็บโปรเจ็กต์ในส่วน Assets หรือไม่
วิธีย้ายข้อมูลไปใช้แพ็กเกจ UPM
ตรวจสอบว่าได้นำแพ็กเกจ Google ทั้งหมดออกจากโฟลเดอร์ Assets แล้ว
- หากต้องการถอนการติดตั้งแพ็กเกจ Firebase ให้ทำตาม วิธีการเหล่านี้
- หากต้องการถอนการติดตั้ง Play Plugins for Unity ให้ลบโฟลเดอร์
GooglePlayPluginsในส่วนAssets
ติดตั้งแพ็กเกจโดยใช้ Unity Package Manager ตามที่อธิบายไว้ ข้างต้น
วิธีการย้ายข้อมูลเฉพาะผลิตภัณฑ์
ดูวิธีการสำหรับ Firebase ได้ที่ที่นี่