ติดตั้งแพ็กเกจ Google สำหรับ Unity

แพ็กเกจ Google สำหรับ Unity กระจายออกเป็น 2 รูปแบบคือ

  • แพ็กเกจชิ้นงาน:
    • มีส่วนขยาย .unitypackage
    • ติดตั้งในไดเรกทอรี Assets ของโปรเจ็กต์
    • นำเข้าใน Unity 5 ขึ้นไปได้
    • โดยทั่วไปแล้วจะรวมแพ็กเกจที่เกี่ยวข้อง
  • แพ็กเกจ Unity Package Manager (UPM):
    • มีส่วนขยาย .tgz
    • ติดตั้งในไดเรกทอรี Packages ของโปรเจ็กต์
    • นำเข้าใน Unity 2018.4 ขึ้นไปได้
    • อ้างอิงแพ็กเกจที่อ้างอิงซึ่งต้องติดตั้งแยกต่างหาก

หน้าแพ็กเกจจะมีไฟล์ .unitypackage ล่าสุดสำหรับแพ็กเกจทั้งหมดที่มีอยู่

หน้าที่เก็บถาวรมีไฟล์ .unitypackage และ .tgz สำหรับแพ็กเกจทุกเวอร์ชัน

ดูคำแนะนำเกี่ยวกับวิธีติดตั้งแพ็กเกจทั้ง 2 ประเภทได้ที่ด้านล่าง พร้อมคำแนะนำในการย้ายข้อมูลเพื่อเปลี่ยนจากประเภทไปเป็นแพ็กเกจอีกประเภท

เมื่อคุ้นเคยกับตัวเลือกการติดตั้งเหล่านี้แล้ว โปรดอ่านวิธีการเฉพาะผลิตภัณฑ์เพิ่มเติมสำหรับ Firebase

กำลังนำเข้าแพ็กเกจเนื้อหาที่มีไฟล์ .unitypackage รายการ

นำเข้าไฟล์ .unitypackage โดยเลือกตัวเลือกเมนู Unity Assets > Import package > Custom Package และนำเข้ารายการทั้งหมด การดำเนินการนี้จะเพิ่มเนื้อหาแพ็กเกจลงในโปรเจ็กต์ภายใต้ไดเรกทอรี Asset

การนำเข้าแพ็กเกจ UPM ที่มี .tgz ไฟล์ (2018.4 ขึ้นไป)

นำเข้า .tgz ไฟล์ไปยังโปรเจ็กต์โดยใช้วิธีใดวิธีหนึ่งต่อไปนี้

manifest.json

  1. สร้างโฟลเดอร์ใหม่ข้างโฟลเดอร์ Packages ของโปรเจ็กต์และตั้งชื่อว่า GooglePackages
  2. วางไฟล์ .tgz ลงในโฟลเดอร์นั้น
  3. ใช้เครื่องมือแก้ไขข้อความเพื่อเปิด Packages/manifest.json ภายใต้โฟลเดอร์โปรเจ็กต์ Unity
  4. เพิ่มรายการสำหรับแต่ละแพ็กเกจที่ต้องการติดตั้ง โดยแมปชื่อแพ็กเกจกับตำแหน่งในดิสก์โดยสัมพันธ์กับไฟล์ 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...
      }
    }
    
  5. บันทึกไฟล์ Manifest.json

  6. เมื่อ Unity กลับมาโฟกัสอีกครั้ง ระบบจะโหลดไฟล์ Manifest.json ซ้ำและนำเข้าแพ็กเกจที่เพิ่มเข้ามาใหม่

Unity เวอร์ชันเก่าบางเวอร์ชันไม่รองรับไฟล์ .tgz ใน manifest.json ในกรณีนี้ คุณควรทำดังนี้

  1. ยกเลิกการบีบอัดไฟล์ .tgz
  2. วางโฟลเดอร์ที่แยกออกมาไว้ในโฟลเดอร์ GooglePackages
  3. แก้ไข 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 ตัวจัดการแพ็กเกจ

  1. เปิดหน้าต่างตัวจัดการแพ็กเกจของ Unity
  2. คลิกไอคอน + ที่มุมซ้ายบนของหน้าต่างตัวจัดการแพ็กเกจ แล้วเลือก Add package from tarball เพื่อเปิดไฟล์เบราว์เซอร์

    ภาพหน้าจอของหน้าต่างตัวจัดการแพ็กเกจ Unity พร้อม

  3. เลือก tarball ที่ต้องการในโปรแกรมเรียกดูไฟล์

Unity เวอร์ชันเก่าบางเวอร์ชันไม่รองรับการเพิ่ม tarball โดยตรง ในกรณีนี้ คุณจะต้อง:

  1. ยกเลิกการบีบอัดไฟล์ .tgz
  2. คลิกไอคอน + ที่มุมซ้ายบนของหน้าต่างตัวจัดการแพ็กเกจ แล้วเลือก Add package from disk เพื่อเปิดไฟล์เบราว์เซอร์

    ภาพหน้าจอของหน้าต่างตัวจัดการแพ็กเกจ Unity พร้อม

  3. เลือกโฟลเดอร์ที่แยกออกมาในโปรแกรมเรียกดูไฟล์

อย่าลืมนำเข้าไฟล์ .tgz สำหรับทรัพยากร Dependency ของแพ็กเกจด้วย ซึ่งเข้าถึงได้ที่หน้าที่เก็บถาวรในส่วนของแพ็กเกจที่ต้องการ

ตัวอย่างเช่น หากจะติดตั้ง com.google.firebase.storage คุณจะติดตั้งไฟล์ .tgz ตามลำดับต่อไปนี้

  1. เครื่องมือจัดการการขึ้นต่อกันภายนอก (com.google.external-dependency-manager)
  2. Firebase Core (com.google.firebase.app)
  3. การตรวจสอบสิทธิ์ Firebase (com.google.firebase.auth)
  4. พื้นที่เก็บข้อมูลของ Firebase (com.google.firebase.storage)

หากต้องการเพิ่มไฟล์ .tgz ทั้งหมดพร้อมกันโดยไม่ต้องกังวลเรื่องคำสั่งซื้อ ให้ทำตามวิธีการในแท็บไฟล์ Manifest.json

การควบคุมเวอร์ชัน

หากคุณใช้ซอฟต์แวร์การควบคุมเวอร์ชันเพื่อจัดการไฟล์โปรเจ็กต์ เราขอแนะนำให้เพิ่มไฟล์ .tgz ที่เกี่ยวข้องลงในการควบคุมเวอร์ชัน คุณแก้ไข manifest.json ของโปรเจ็กต์ด้วยตนเองได้ (ดูวิธีการด้านบน) และอ้างอิงไฟล์ .tgz ในเครื่องโดยใช้เส้นทางแบบสัมพัทธ์

หากคุณใช้ Git เราขอแนะนําให้ใช้ Git Large File Storage (LFS) สําหรับจัดการไฟล์ขนาดใหญ่ .tgz รายการ

การย้ายข้อมูลจากแพ็กเกจ UPM ไปยังแพ็กเกจเนื้อหา

ในบางกรณี คุณอาจต้องเปลี่ยนจากการใช้เครื่องมือจัดการแพ็กเกจ Unity เพื่อจัดการแพ็กเกจ Google เป็นการติดตั้งแพ็กเกจภายใต้โฟลเดอร์เนื้อหา

ตรวจสอบว่าได้นำแพ็กเกจ Google ทั้งหมดออกจากตัวจัดการแพ็กเกจ Unity โดยใช้วิธีใดวิธีหนึ่งต่อไปนี้

UI ตัวจัดการแพ็กเกจ

  1. เปิดหน้าต่างตัวจัดการแพ็กเกจของ Unity
  2. เลือก In Project ในเมนูแบบเลื่อนลงที่ด้านซ้ายบน

    ภาพหน้าจอของหน้าต่างตัวจัดการแพ็กเกจ Unity พร้อม

  3. พิมพ์ com.google ในแถบค้นหาเพื่อกรองแพ็กเกจ Google

    ภาพหน้าจอของหน้าต่างตัวจัดการแพ็กเกจ Unity ที่มี

  4. คลิกชื่อแพ็กเกจแต่ละรายการ แล้วคลิก Remove

manifest.json

  1. ใช้เครื่องมือแก้ไขข้อความเพื่อเปิด Packages/manifest.json ภายใต้โฟลเดอร์โปรเจ็กต์ Unity
  2. ตรวจสอบว่ามีแพ็กเกจจาก Google ภายใต้ "การขึ้นต่อกัน" หรือไม่ ชื่อแพ็กเกจควรขึ้นต้นด้วย "com.google" เช่น "com.google.firebase.app"
  3. ลบบรรทัดเหล่านั้นออกและบันทึกไฟล์ JSON
  4. เมื่อ Unity กลับมาโฟกัสอีกครั้ง ระบบจะโหลดไฟล์ manifest.json ซ้ำและนำแพ็กเกจที่ลบไปแล้วออก

หลังจากที่ถอนการติดตั้งแพ็กเกจเหล่านั้นจาก Unity Package Manager แล้ว คุณจะดาวน์โหลดและนำเข้าไฟล์ .unitypackage ทดแทนได้จากหน้าที่เก็บถาวร

การย้ายข้อมูลจากแพ็กเกจเนื้อหาไปยังแพ็กเกจ UPM

ในบางกรณี คุณอาจต้องเปลี่ยนจากการติดตั้งผลิตภัณฑ์ภายใต้โครงสร้างชิ้นงาน เป็นการติดตั้งและติดตามผลิตภัณฑ์ด้วย Unity Package Manager

หากไม่แน่ใจว่ากำลังใช้วิธีการติดตั้งใดอยู่ ให้ตรวจสอบว่าแพ็กเกจ Google ที่ต้องการปรากฏในแท็บ "โปรเจ็กต์" ใต้ชิ้นงานหรือไม่ใน Unity UI

วิธีย้ายข้อมูลไปยังแพ็กเกจ UPM

  1. ตรวจสอบว่าได้นำแพ็กเกจ Google ทั้งหมดออกจากโฟลเดอร์เนื้อหาแล้ว

    • หากต้องการถอนการติดตั้งแพ็กเกจ Firebase ให้ทำตามวิธีการเหล่านี้
    • หากต้องการถอนการติดตั้งปลั๊กอิน Play สำหรับ Unity ให้ลบโฟลเดอร์ GooglePlayPlugins ในส่วน Assets
  2. ติดตั้งแพ็กเกจโดยใช้ Unity Package Manager ตามที่อธิบายไว้ ด้านบน

คำแนะนำการย้ายข้อมูลเฉพาะผลิตภัณฑ์

ดูวิธีการสำหรับ Firebase ที่นี่