เผยแพร่แอป

Google Play EMM API รองรับวิธีการเผยแพร่แอปสาธารณะและแอปส่วนตัวดังต่อไปนี้

ติดตั้งแอปจาก Managed Google Play Store ด้วยตนเอง

คุณกำหนดแอปที่อนุญาตให้ผู้ใช้ติดตั้งได้ในpolicy ของ Device และตั้งค่าด้วยการเรียกใช้ Devices.update เมื่อจัดสรรอุปกรณ์ใหม่ คุณควรตั้งค่านโยบายก่อนที่จะเพิ่มบัญชี Managed Google Play ลงในอุปกรณ์ มิฉะนั้น นโยบายจะไม่มีผลเป็นระยะเวลาสั้นๆ หลังจากเพิ่มบัญชีลงในอุปกรณ์

ลักษณะการทำงานของ Managed Play Store จะกำหนดโดยค่า policy.productAvailabilityPolicy ดังนี้

  • all: แอปสาธารณะทั้งหมดจาก Play Store พร้อมใช้งาน
  • whitelist: มีเฉพาะแอปที่แสดงอยู่ใน policy.productPolicy เท่านั้น

ในทั้ง 2 กรณี ระบบจะเพิ่มแอปทั้งหมดใน policy.productPolicy ไปยังเลย์เอาต์ใน Store ขององค์กรโดยค่าเริ่มต้น เลย์เอาต์ใน Store ขององค์กรจะเป็นหน้าแรกของ Play Store ที่มีการจัดการเมื่อเลือก whitelist และจะเข้าถึงได้ในแท็บ "แอปงาน" เมื่อเลือก all คุณก็อนุญาตให้ลูกค้าปรับแต่งเลย์เอาต์ร้านค้าขององค์กรได้โดยฝัง iframe ของ Managed Google Play (ดูจัดระเบียบแอปด้วย iframe ของ Managed Google Play)

ติดตั้งแอปในอุปกรณ์ของผู้ใช้จากระยะไกล

หากต้องการติดตั้ง (หรือที่เรียกว่าพุชติดตั้ง) จากระยะไกลในอุปกรณ์ของผู้ใช้ ให้ตั้งค่า policy.productPolicy.autoInstallPolicy ในpolicyของ Device เมื่อจัดสรรอุปกรณ์ใหม่ คุณควรตั้งค่านโยบายก่อนที่จะเพิ่มบัญชี Managed Google Play ลงในอุปกรณ์ มิฉะนั้น นโยบายจะไม่มีผลเป็นระยะเวลาสั้นๆ หลังจากเพิ่มบัญชีลงในอุปกรณ์

ตั้งค่า autoInstallMode เป็น

  • doNotAutoInstall: แอปไม่ได้ติดตั้งโดยอัตโนมัติ
  • autoInstallOnce: ระบบจะติดตั้งแอปโดยอัตโนมัติ 1 ครั้ง หากผู้ใช้ถอนการติดตั้งแอป แอปก็จะไม่ติดตั้งอีก
  • forceAutoInstall: ระบบจะติดตั้งแอปโดยอัตโนมัติหากผู้ใช้ถอนการติดตั้งแอป แอปก็จะติดตั้งอีกครั้ง ในอุปกรณ์ที่มีการจัดการ DPC ควรบล็อกการถอนการติดตั้งโดยใช้ DevicePolicyManager.setUninstallBlocked

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

ลำดับความสำคัญของการติดตั้ง

คุณเลือกลำดับการติดตั้งได้โดยการตั้งค่า autoInstallPriority ลำดับความสำคัญต้องเป็นจำนวนเต็มที่ไม่มีเครื่องหมาย และค่าเริ่มต้นคือ 0 แอปจะติดตั้งตามลำดับหรือลำดับความสำคัญที่สูงขึ้น ซึ่งหมายความว่าระบบจะติดตั้งแอปที่มีค่าลำดับความสำคัญต่ำกว่าก่อน

ข้อจำกัดการติดตั้ง

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

  • อุปกรณ์ควรเชื่อมต่อกับเครือข่าย Wi-Fi ไหม
  • อุปกรณ์ควรชาร์จอยู่หรือไม่
  • และกำหนดว่าอุปกรณ์จะไม่มีการใช้งานหรือไม่ (ผู้ใช้ไม่ได้ใช้งานตลอดเวลา)

หากไม่เป็นไปตามข้อจำกัดในทันที การติดตั้งที่ได้รับผลกระทบจะอยู่ในคิวจนกว่าจะเป็นไปตามข้อจำกัด

ใน autoInstallConstraint จะมีการใช้กฎ AND ระหว่างช่อง ตัวอย่างเช่น สำหรับ autoInstallConstraint ต่อไปนี้ อุปกรณ์จะต้องกำลังชาร์จและเชื่อมต่อกับเครือข่ายที่ไม่มีการวัดปริมาณอินเทอร์เน็ต (เช่น Wi-Fi) จึงจะติดตั้งแอปได้

"autoInstallConstraint": [
  "chargingStateConstraint" : "chargingRequired",
  "networkTypeConstraint" : "unmeteredNetwork"
]

ติดตั้งแอปโดยอัตโนมัติในอุปกรณ์ที่จัดสรรใหม่

Google Play EMM API จะส่งการแจ้งเตือน NewDeviceEvent เมื่อจัดสรรอุปกรณ์เป็นครั้งแรก หากต้องการพุชการติดตั้งแอปไปยังอุปกรณ์ที่จัดสรรใหม่โดยอัตโนมัติ ให้ฟังการแจ้งเตือน NewDeviceEvent จาก NewDeviceEvent แต่ละรายการ ให้เรียกใช้ userId และ deviceId แล้วเรียกใช้ Devices.update เพื่อตั้ง นโยบายสำหรับอุปกรณ์นั้น

หากต้องการดูวิธีสมัครรับการแจ้งเตือน EMM โปรดดู ตั้งค่าการแจ้งเตือน EMM

เผยแพร่แอปสำหรับการทดสอบแบบปิด

การทดสอบแบบปิดช่วยให้นักพัฒนาแอปได้รับความคิดเห็นเกี่ยวกับแอปเวอร์ชันแรกๆ จากผู้ใช้ที่เชื่อถือได้ นักพัฒนาซอฟต์แวร์สามารถตั้งค่าการทดสอบแบบปิดใน Google Play Console คุณใช้ Play EMM API เพื่ออนุญาตให้ผู้ดูแลระบบไอทีเผยแพร่แอปเวอร์ชันปิด (หรือที่เรียกว่าแทร็ก) ไปยังผู้ใช้ที่ต้องการได้ ลูกค้าองค์กรใช้ฟีเจอร์นี้ได้ ซึ่งนอกจากจะทดสอบแอปของบุคคลที่สามแล้ว ยังทดสอบแอปส่วนตัวที่พัฒนาภายในองค์กรได้ด้วย

แอปที่มีสิทธิ์

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

  • แอปเวอร์ชันที่ใช้งานจริงเผยแพร่ใน Google Play แล้ว
  • ใน Google Play Console จะมีการเปิดใช้ Managed Google Play ไว้ในหน้าการตั้งค่าขั้นสูงของแอป
  • แอปทุกเวอร์ชันแบบปิดเป็นไปตาม ข้อกำหนดรหัสเวอร์ชัน

เพิ่มองค์กรในการทดสอบแบบปิด

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

  1. ลงชื่อเข้าใช้ Managed Google Play Store
  2. คลิกที่การตั้งค่าสำหรับผู้ดูแลระบบ
  3. คัดลอกสตริงรหัสองค์กรจากช่องข้อมูลองค์กร แล้วส่งให้นักพัฒนาซอฟต์แวร์

ข้อกำหนดเพิ่มเติมสำหรับแอปส่วนตัว

สำหรับแอปส่วนตัว นักพัฒนาซอฟต์แวร์จะต้องเพิ่มรหัสองค์กรของแต่ละองค์กรที่เข้าร่วมในแท็บ Managed Google Play ในหน้าการตั้งค่าขั้นสูงของแอป โปรดดูวิธีการที่หัวข้อเผยแพร่แอปส่วนตัว

เผยแพร่แทร็กแบบปิดไปยังผู้ใช้

หากต้องการเรียกข้อมูลรายการแทร็กที่พร้อมใช้งานสำหรับองค์กรสำหรับแอปที่ระบุ โปรดโทร Products.get รายการ appTracks[] ที่อยู่ในคำตอบมีแทร็กที่พร้อมใช้งานสำหรับแต่ละแอป โดย appTracks[].trackAlias เป็นชื่อแทร็กที่ผู้ใช้อ่านได้สำหรับแทร็กที่คุณแสดงในคอนโซล EMM ได้ และ appTracks[].trackId คือรหัสที่เครื่องอ่านได้สำหรับแทร็กนั้นๆ

หากต้องการให้สิทธิ์ระดับการเข้าถึงแทร็กแบบปิดของแอปแก่ผู้ใช้ ให้ตั้งค่า policy.productPolicy[].trackIds[] ใน policy ของ Device หากอุปกรณ์หนึ่งมีแทร็กหลายรายการ ระบบจะติดตั้งเวอร์ชันที่พร้อมใช้งานซึ่งมีรหัสเวอร์ชันสูงสุด

ระบบจะนํา TrackId ออกจากการเรียก Products.get โดยอัตโนมัติในบางสถานการณ์ต่อไปนี้

  • มีการโปรโมต APK ของแทร็กเป็นแทร็กอื่นหรือเป็นเวอร์ชันที่ใช้งานจริง
  • เวอร์ชันที่ใช้งานจริงได้รับการอัปเดตด้วยเวอร์ชันที่สูงกว่าแทร็ก
  • นักพัฒนาซอฟต์แวร์หยุดแทร็ก

ติดตามใบอนุญาตของแอปที่ต้องซื้อ

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

ก่อนที่จะติดตั้งแอปที่ต้องซื้อในอุปกรณ์ได้ องค์กรจะต้องมีใบอนุญาตสำหรับแอป หากมีใบอนุญาต ระบบจะติดตั้งแอปในอุปกรณ์และสร้างออบเจ็กต์ Entitlements ออบเจ็กต์ Entitlements จะลิงก์ใบอนุญาตกับผู้ใช้และลดจำนวนใบอนุญาตที่มีสำหรับแอป หากไม่มีใบอนุญาต การติดตั้งแอปจะไม่สำเร็จและจะไม่มีการสร้างออบเจ็กต์ Entitlements

แอปพลิเคชันที่เผยแพร่โดยไม่มีค่าใช้จ่ายไม่ได้ใช้ออบเจ็กต์ Grouplicenses และ Entitlements