การทดสอบ การเผยแพร่ และการแชร์เกมทันใจ

เมื่อคุณพัฒนาเกมทันใจ เราสามารถช่วยให้คุณดำเนินการทดสอบเวอร์ชั่นพัฒนาในระบบ เผยแพร่แบบอัตโนมัติ และแชร์บิลด์กับทีมของคุณได้ง่ายดายอย่างยิ่ง เอกสารนี้จะอธิบายขั้นตอนดังกล่าวอย่างละเอียด

การทดสอบเกมจากเซิร์ฟเวอร์เฉพาะที่

ประสบการณ์เกมทันใจส่วนใหญ่จะมาจากโอเวอร์เลย์แบบเนทีฟที่เพิ่มลงในเกมก่อนและหลังการเล่นเกมแต่ละเซสชั่น เพื่อให้การพัฒนาและการทดสอบขั้นตอนการทำงานสะดวกยิ่งขึ้น เราได้เปิดให้ผู้พัฒนาสามารถเรียกใช้เกมจากเซิร์ฟเวอร์เฉพาะที่ได้ ซึ่งจะมีประสบการณ์ใกล้เคียงอย่างมากกับที่ผู้เล่นจะได้รับบนแพลตฟอร์มของเรา โดยจะทดสอบผ่านโปรแกรมทดลองเล่นแบบฝังซึ่งต้องมีการกำหนดค่าเล็กน้อย

การเปิดใช้งาน SSL ผ่าน localhost

เนื่องจากโปรแกรมทดลองเล่นแบบฝังของเราทำงานภายใต้โดเมน facebook.com จึงสามารถแสดงผ่าน https เท่านั้น หากต้องการฝังเนื้อหาในเพจที่แสดงผ่าน https ก็จะต้องแสดงเนื้อหาที่ฝังผ่าน SSL ด้วย ขั้นตอนถัดไปจะอธิบายเกี่ยวกับการตั้งค่าเซิร์ฟเวอร์ localhost ที่แสดงเนื้อหาที่ปลอดภัย เราจะแสดงตัวเลือกด้านล่างนี้เพียงตัวเลือกเดียว แต่ยังมีโซลูชั่นอีกมากมายที่คุณสามารถใช้เพื่อให้ระบบทำงานในลักษณะนี้ได้

> $ npm install -g http-server
  • 2. สร้างคีย์ส่วนตัวและใบรับรองผ่าน openssl ซึ่งจำเป็นในการเรียกใช้เซิร์ฟเวอร์เฉพาะที่ที่ปลอดภัย
> $ cd path/to/my/game/
> $ openssl genrsa 2048 > key.pem
> $ openssl req -x509 -days 1000 -new -key key.pem -out cert.pem
# Fill out necessary information
  • 3. เรียกใช้เกมจาก localhost โดยใช้ SSL เมื่อคีย์และใบรับรองพร้อมแล้ว คุณก็จะสามารถแสดงเกมจาก localhost โดยใช้ SSL ได้
# Starts to serve via HTTPS, with cache disabled
> $ http-server --ssl -c-1 -p 8080 -a 127.0.0.1 
Starting up http-server, serving ./ through https
Available on:
https://127.0.0.1:8080
Hit CTRL-C to stop the server
  • 4. หลังจากนั้น เมื่อนำทางเบราว์เซอร์ของคุณไปที่ https://localhost:8080 ระบบควรแสดงให้เห็นว่าเกมกำลังทำงานอยู่

หมายเหตุ: คุณต้องลองเข้าใช้งานอย่างน้อย 1 ครั้ง เนื่องจากคุณอาจต้องอนุมัติคำเตือนเกี่ยวกับการรักษาความปลอดภัยจากเบราว์เซอร์ก่อนที่จะดำเนินการต่อ หากจำเป็นต้องทำการอนุมัติแต่คุณข้ามขั้นตอนนี้ไป ระบบจะไม่โหลดเกมของคุณ

ตัวอย่างเช่น เมื่อใช้ Chrome คุณอาจต้องเข้าไปยัง chrome://flags/#allow-insecure-localhost แล้วเปิดใช้งาน "อนุญาตใบรับรองที่ไม่ถูกต้องสำหรับแหล่งข้อมูลที่โหลดจาก localhost" เพื่อให้คำเตือนหายไป

การเรียกใช้โปรแกรมเล่นแบบฝังจากเบราว์เซอร์ของคุณ

เมื่อมีการแสดงเกมจาก localhost ผ่านการเชื่อมต่อที่ปลอดภัยแล้ว คุณจะสามารถฝังเกมลงในโปรแกรมเล่นของเราได้ นำทางเบราว์เซอร์ของคุณไปที่นี่:

https://www.facebook.com/embed/instantgames/YOUR_GAME_ID/player?game_url=https://localhost:8080

คุณจะเห็นว่าเกมของคุณกำลังทำงานอยู่ใน "โปรแกรมเล่นเกมทันใจ" ในลักษณะดังนี้

หมายเหตุ: คุณต้องเล่นเกมของคุณใน fb.gg/play/YOUR_GAME_ID อย่างน้อย 1 ครั้งก่อน เพื่อให้โปรแกรมเล่นแบบฝังทำงานได้เป็นปกติ

ถึงขณะนี้ คุณควรจะสามารถใช้ฟีเจอร์ทั้งหมดของ SDK ของเกมทันใจจากเกมที่ทำงานอยู่บนเซิร์ฟเวอร์เฉพาะที่ของคุณได้แล้ว

localhost เป็นโดเมนเดียวที่รองรับสำหรับทดสอบกับโปรแกรมทดลองเล่นแบบฝัง เนื่องด้วยเหตุผลด้านการรักษาความปลอดภัย

การเล่นจากเซิร์ฟเวอร์เฉพาะที่ในการสนทนาที่เจาะจง

คุณสามารถเรียกใช้เกมได้จากเซิร์ฟเวอร์เฉพาะที่ของคุณในบริบทที่เฉพาะเจาะจงได้ ซึ่งทำได้โดยแค่ใช้โปรแกรมเล่นแบบฝังตามที่อธิบายไว้ข้างต้น จากนั้น คุณสามารถใช้เมธอด FBInstant.context (เช่น switchAsync(), createAsync() และ chooseAsync()) เพื่อเปลี่ยนเป็นบริบทอื่นๆ ได้

วิธีนี้ช่วยให้คุณเล่นเกมจาก localhost ในบริบทการสนทนาได้อย่างมีประสิทธิภาพ รวมถึงสามารถทดสอบได้ว่าระบบส่งการอัพเดตบริบทของคุณอย่างถูกต้องหรือไม่

การอัพโหลดบิลด์

บีบอัดให้เกมของคุณให้อยู่ในไฟล์ .zip เดียว

เนื้อหาเกมทันใจจะโฮสต์อยู่บนโครงสร้างพื้นฐานของ Facebook คุณจึงไม่ต้องโฮสต์เนื้อหาเกมด้วยตนเองหรือใช้บริการของบุคคลที่สาม เมื่อเกมพร้อมสำหรับการทดสอบแล้ว ให้บีบอัดไฟล์เกมทั้งหมดของคุณเป็นไฟล์ .zip เดียว โปรดทราบว่าไฟล์ index.html ต้องอยู่ในต้นทางของคลังจัดเก็บนี้ และต้องไม่อยู่ในโฟลเดอร์ย่อยใดๆ ทั้งสิ้น วิธีอัพโหลดชุดเกมมีอยู่ 2 วิธีดังต่อไปนี้

1. อัพโหลดไฟล์ .zip ผ่านเว็บไซต์ผู้พัฒนา

เมื่อต้องการอัพโหลดไฟล์ .zip ให้คลิกแท็บเว็บโฮสติ้งจากผลิตภัณฑ์เกมทันใจในแดชบอร์ดของแอพ ต่อมา ให้คลิกอัพโหลดเวอร์ชั่น ซึ่งจะอนุญาตให้คุณอัพโหลดไฟล์ .zip ไปยังบริการโฮสติ้งของ Facebook ได้

หลังจากนั้น บิลด์จะประมวลผลไฟล์ซึ่งควรใช้เวลาไม่กี่วินาทีเท่านั้น เมื่อสถานะเปลี่ยนเป็น "สแตนด์บาย" แสดงว่าแอพพร้อมให้คุณนำไปใช้งานจริงแล้ว!

2. อัพโหลดไฟล์ที่จัดเก็บถาวรผ่าน API กราฟ

อีกทางเลือกหนึ่งคือ คุณสามารถอัพโหลดชุดเกมของคุณผ่านการเรียกใช้ API กราฟได้ วิธีนี้จะมีประโยชน์หากคุณมีระบบปรับใช้แบบอัตโนมัติอยู่แล้ว หากต้องการใช้วิธีนี้ คุณจำเป็นต้องส่งคำขอโทเค็นการอัพโหลดจากส่วนเว็บโฮสติ้ง โดยคลิกปุ่ม "รับโทเค็นการเข้าถึงเพื่ออัพโหลดองค์ประกอบ" ที่อยู่ด้านบนสุด

เมื่อคุณมีโทเค็นจากในกล่องโต้ตอบแล้ว คุณก็สามารถส่งการเรียกใช้ต่อไปนี้ไปยัง API กราฟของเราเพื่อที่จะส่งไฟล์ .zip ของคุณได้ โปรดทราบว่าเราตั้งใจใช้โดเมนย่อยของวิดีโอ เนื่องจาก URL ดังกล่าวได้รับการกำหนดค่าให้รับการอัพโหลดขนาดใหญ่ขึ้น

curl -X POST https://graph-video.facebook.com/{App ID}/assets 
  -F 'access_token={ASSET UPLOAD ACCESS TOKEN}' 
  -F 'type=BUNDLE' 
  -F 'asset=@./{YOUR GAME}.zip' 
  -F 'comment=Graph API upload'

หลังจากนั้น เกมของคุณจะปรากฏขึ้นตามปกติในรายการชุดเกมที่อัพโหลด คุณสามารถใช้การเรียกใช้นี้เพื่อผสานการทำงานกับระบบบิลด์ที่คุณมีอยู่ได้

ข้อจำกัดในการโฮสต์

โปรดคำนึงอยู่เสมอว่าการโฮสต์ของ Facebook มีข้อจำกัดหลายอย่าง แต่ที่สำคัญที่สุดมีดังนี้

  • ไม่รองรับตรรกะฝั่งเซิร์ฟเวอร์ (เช่น php)
  • ขนาดโดยรวมของไฟล์ที่อัพโหลดจะต้องไม่เกิน 200 MB
  • จำนวนไฟล์ภายในการอัพโหลดแอพพลิเคชั่น 1 ครั้งจะต้องไม่เกิน 500 ไฟล์

โปรดอ่านรายละเอียดเพิ่มเติมในเอกสารประกอบเกี่ยวกับเว็บโฮสติ้ง

การทดสอบบิลด์ที่อัพโหลด

นำบิลด์ไปใช้งานจริง

หากต้องการทดสอบการอัพโหลดในสภาพแวดล้อมการใช้งานจริง บิลด์นั้นจะต้องได้รับการจัดให้อยู่ในสภาพแวดล้อมการใช้งานจริงก่อน คลิกปุ่ม "★" เพื่อนำบิลด์ดังกล่าวเข้าสู่สภาพแวดล้อมการใช้งานจริง

หมายเหตุ:

บิลด์เวอร์ชั่นใช้งานจริงเป็นบิลด์ที่จะนำไปให้บริการแก่ผู้ใช้ทุกคนที่เล่นเกมของคุณ คุณสามารถนำบิลด์เข้าสู่ขั้นตอนการทดสอบเพื่อทดสอบการอัพเดตในสภาพแวดล้อมการใช้งานจริงได้โดยไม่กระทบต่อฐานผู้เล่นที่มีอยู่ วิธีนี้จะส่งผลให้ระบบแสดงบิลด์ให้แก่ผู้พัฒนาและผู้ทดสอบแอพเท่านั้น

หมายเหตุ: ห้ามสร้างแอพทดสอบสำหรับเกมของคุณโดยใช้ปุ่ม "สร้างแอพทดสอบ" วิธีที่ควรใช้คือนำบิลด์เข้าสู่การทดสอบเมื่อต้องการทดสอบเกมทันใจ

เมื่อคุณมีบิลด์อยู่ในสภาพแวดล้อมการใช้งานจริง ให้ทดสอบบิลด์ที่ใช้งานจริงอยู่เสมอ แทนที่จะทดสอบบิลด์ซึ่งกำลังทำงานอยู่บนเซิร์ฟเวอร์เฉพาะที่ คุณสามารถทดสอบบิลด์ที่ใช้งานจริงได้โดยใช้วิธีใดวิธีหนึ่งต่อไปนี้

1. เล่นเกมของคุณบน Facebook

เมื่อต้องการแชร์เกมของคุณในฟีด ให้คลิกปุ่ม "แชร์" ในส่วน "แชร์เกมของคุณ" การดำเนินการนี้จะช่วยให้คุณสามารถแชร์เกมในฟีดและทดสอบเกมจากแพลตฟอร์มใดๆ ก็ได้ (เดสก์ท็อป, iOS หรือ Android)



2. เล่นเกมของคุณบน Messenger

คุณและทีมของคุณ (ผู้ที่ได้รับการกำหนดบทบาทเป็น "ผู้ดูแล" "ผู้พัฒนา" หรือ "ผู้ทดสอบ" ในแอพของคุณ) ควรมีรายชื่อเกมทั้งหมดที่อยู่ระหว่างการพัฒนาในรายการเกมทันใจภายใน Messenger ซึ่งรายการดังกล่าวมีชื่อว่า "อยู่ระหว่างการพัฒนา" วิธีนี้ช่วยให้คุณทดสอบเกมใน Messenger ได้ แม้จะยังไม่ได้เผยแพร่ก็ตาม

หากคุณเชื่อมโยงเพจกับเกมไว้แล้ว คุณสามารถสร้างลิงก์ที่แชร์ได้เช่นกัน ซึ่งลิงก์นี้จะนำผู้ใช้ไปยังการสนทนากับบอทของคุณบน Messenger และเปิดเกมโดยอัตโนมัติ หากคุณตั้งค่าบอทไว้แล้ว แต่หากไม่ได้เชื่อมโยง ลิงก์จะนำผู้ใช้ไปยังเพจบน Facebook ของคุณ และเปิดเกมโดยอัตโนมัติจากในเพจ ไม่ว่าวิธีใด ทุกคนที่คลิกลิงก์ควรสามารถเล่นเกมได้ทันที

การส่งเข้ารับการตรวจสอบแอพ

เมื่อคุณรู้สึกพอใจกับเวอร์ชั่นที่เผยแพร่แล้ว คุณต้องส่งเกมของคุณเข้ารับการตรวจสอบแอพ เพื่อให้ทีมของเราสามารถประเมินคุณภาพและการปฏิบัติตามนโยบายแพลตฟอร์มของเราได้ อย่าลืมตรวจสอบรายการตรวจสอบสำหรับการเผยแพร่ให้เรียบร้อยก่อนส่ง และตรวจสอบว่าเกมของคุณมีคุณสมบัติตรงตามเกณฑ์ที่ระบุไว้ครบถ้วน คู่มือนี้ดังกล่าวมีคำแนะนำเกี่ยวกับวิธีเผยแพร่เกมเมื่อผ่านการตรวจสอบแล้วอีกด้วย

ขั้นตอนถัดไป

เมื่อคุณทราบแล้วว่าการทดสอบและเผยแพร่เกมของคุณต้องทำอย่างไรบ้าง คุณสามารถดูรายการตรวจสอบสำหรับการเปิดตัวก่อนที่จะส่งเกมของคุณได้ในรายการตรวจสอบสำหรับการเปิดตัวเกมทันใจ และโปรดอ่านคำแนะนำเกี่ยวกับการออกแบบและการอัพเดตเกมของคุณในส่วนหลักปฏิบัติที่ดีที่สุด