เผยแพร่แอป

ส่วนต่อไปนี้จะให้ข้อมูลที่เป็นประโยชน์เกี่ยวกับการจัดจำหน่ายแอปใน Managed Google Play Store

ติดตั้งแอป

คุณติดตั้งแอป Android จาก Google Play Store ในอุปกรณ์ได้โดยใช้นโยบาย หากต้องการใช้ฟีเจอร์นี้ คุณจำเป็นต้องทราบชื่อแพ็กเกจของแอปที่ต้องการติดตั้ง ในการหาชื่อแพ็กเกจของแอป คุณมี 2 ตัวเลือกดังนี้

  1. ชื่อแพ็กเกจของแอปจะอยู่ใน URL ของหน้า Google Play Store ตัวอย่างเช่น URL ของหน้าแอป Google Chrome คือ

    https://play.google.com/store/apps/details?id=com.android.chrome
    และชื่อแพ็กเกจคือ com.android.chrome

  2. คุณสามารถฝัง iframe ของ Managed Google Play ในคอนโซล EMM เพื่อให้ลูกค้าเรียกดู Google Play Store ได้ เมื่อลูกค้าเลือกแอปใน iframe คอนโซล EMM ของคุณจะได้รับชื่อแพ็กเกจในเหตุการณ์

จากนั้นคุณจะเพิ่มแอปใน นโยบายด้านอุปกรณ์ได้ ดังนี้

"applications":[
   {
      "installType":"FORCE_INSTALLED",
      "packageName":"com.android.chrome",
   },
],

เมื่อคุณใช้นโยบายกับอุปกรณ์ ระบบจะติดตั้งแอปในอุปกรณ์หรือเพิ่มลงใน Managed Google Play Store ในอุปกรณ์

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

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

เมื่อตั้งค่าการทดสอบแบบปิดใน Play Console นักพัฒนาแอปจะกำหนดเป้าหมายองค์กรได้สูงสุด 100 องค์กร (enterprises) คุณสามารถใช้ Android Management API เพื่อดึงข้อมูลแทร็กแบบปิดที่กำหนดเป้าหมายไปยังองค์กร แล้วเผยแพร่แทร็กแบบปิดเหล่านี้ไปยังอุปกรณ์โดยใช้นโยบาย

แอปที่มีสิทธิ์สำหรับการทดสอบแบบปิด

ก่อนตั้งค่าการทดสอบแบบปิด นักพัฒนาแอปต้องตรวจสอบว่าแอปของตนเป็นไปตามข้อกำหนดต่อไปนี้

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

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

เมื่อตั้งค่าการทดสอบแบบปิด นักพัฒนาแอปสามารถให้สิทธิ์องค์กรในการเข้าถึงการทดสอบแบบปิดได้โดยการเพิ่มรหัสองค์กร ลูกค้าค้นหารหัสองค์กรได้โดยใช้วิธีการเหล่านี้

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

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

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

หากต้องการเรียกข้อมูลรายการแทร็กที่พร้อมใช้งานสำหรับองค์กรสำหรับแอปที่ระบุ โปรดโทร enterprises.applications รายการ appTrackInfo[] ที่รวมอยู่ในคําตอบจะมีข้อมูลต่อไปนี้สําหรับแอปที่ระบุ

  • trackId: ตัวระบุที่ไม่ซ้ำกันของแทร็ก ซึ่งนำมาจาก releaseTrackId ใน URL ของหน้าใน Play Console ซึ่งแสดงข้อมูลแทร็กของแอป
  • trackAlias: ชื่อแทร็กที่มนุษย์อ่านได้ ซึ่งแก้ไขได้ใน Play Console

หากต้องการติดตั้งแทร็กแบบปิดในอุปกรณ์ของผู้ใช้ ให้ระบุ accessibleTrackIds ในนโยบายด้านอุปกรณ์ดังนี้

"applications":[
   {
      "installType":"AVAILABLE",
      "packageName":"com.google.android.gm",
      "accessibleTrackIds":[
          "123456",
          "789101"
       ]
   },
],

หากนโยบายมีหลายแทร็กจากแอปเดียวกัน (ตามตัวอย่างด้านบน) นโยบายจะติดตั้งแทร็กด้วยรหัสเวอร์ชันสูงสุด

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

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

iframe ของ Managed Google Play

เมื่อใช้ Managed Google Play iframe คุณสามารถฝัง Managed Google Play ไว้ในคอนโซล EMM ได้โดยตรงเพื่อมอบประสบการณ์การจัดการอุปกรณ์เคลื่อนที่แบบรวมศูนย์ให้กับลูกค้า

Managed-play-iframe
รูปที่ 1 iframe ของ Managed Google Play

iframe ประกอบด้วยแถบชื่อและเมนูด้านข้างที่ขยายได้ จากเมนูดังกล่าว ผู้ใช้สามารถไปยังหน้าต่างๆ ได้ดังนี้

  • ค้นหาแอป: ช่วยให้ผู้ดูแลระบบไอทีค้นหาและเรียกดูแอป Google Play, ดูรายละเอียดแอป และเลือกแอปได้
  • แอปส่วนตัว: อนุญาตให้ผู้ดูแลระบบไอทีเผยแพร่และจัดการแอปส่วนตัวสำหรับองค์กรได้
  • เว็บแอป: อนุญาตให้ผู้ดูแลระบบไอทีเผยแพร่และแจกจ่ายทางลัด ของเว็บไซต์ในรูปแบบแอป
  • จัดระเบียบแอป: ให้ผู้ดูแลระบบไอทีกำหนดค่าวิธีจัดระเบียบแอปในแอป Play Store บนอุปกรณ์ของผู้ใช้

ฟีเจอร์

ส่วนนี้จะอธิบายฟีเจอร์ที่มีอยู่ใน iframe ของ Managed Google Play ดูข้อมูลเกี่ยวกับวิธีฝัง iframe และใช้ฟีเจอร์เหล่านี้ได้ที่เพิ่ม iframe ลงในคอนโซล


เพิ่ม iframe ไปยังคอนโซลของคุณ

ขั้นตอนที่ 1 สร้างโทเค็นเว็บ

เรียกใช้ enterprises.webTokens.create เพื่อสร้างโทเค็นเว็บที่ระบุองค์กร การตอบกลับมี value ของโทเค็น

  • ตั้งค่า parentFrameUrl เป็น URL ของเฟรมหลักที่โฮสต์ iframe
  • ใช้ iframeFeature เพื่อระบุฟีเจอร์ที่จะเปิดใช้ใน iframe ซึ่งได้แก่ PLAY_SEARCH, PRIVATE_APPS, WEB_APPS, STORE_BUILDER (จัดระเบียบแอป) หากไม่ได้ตั้งค่า iframeFeature iframe จะเปิดใช้ฟีเจอร์ทั้งหมดโดยค่าเริ่มต้น

ขั้นตอนที่ 2 แสดงผล iframe

ตัวอย่างวิธีแสดงผล iframe ของ Managed Google Play มีดังนี้

<script src="https://apis.google.com/js/api.js"></script>
<div id="container"></div>
<script>
  gapi.load('gapi.iframes', function() {
    var options = {
      'url': 'https://play.google.com/work/embedded/search?token=web_token&mode=SELECT',
      'where': document.getElementById('container'),
      'attributes': { style: 'width: 600px; height:1000px', scrolling: 'yes'}
    }

    var iframe = gapi.iframes.getContext().openChild(options);
  });
</script>

โค้ดนี้จะสร้าง iframe ในคอนเทนเนอร์ div คุณตั้งค่าแอตทริบิวต์ที่จะใช้กับแท็ก iframe ได้ด้วยตัวเลือก "แอตทริบิวต์" ดังที่กล่าวไว้ก่อนหน้านี้

พารามิเตอร์ของ URL

ตารางด้านล่างแสดงพารามิเตอร์ที่มีอยู่ทั้งหมดสำหรับ iframe ซึ่งสามารถเพิ่มเป็นพารามิเตอร์ของ URL ไปยัง URL ได้ เช่น

'url': 'https://play.google.com/work/embedded/search?token=web_token&mode=SELECT&showsearchbox=TRUE',
พารามิเตอร์ หน้าเว็บ จำเป็น คำอธิบาย
token ไม่มีข้อมูล ได้ โดยได้รับโทเค็นจากขั้นตอนที่ 1
iframehomepage ไม่มีข้อมูล ไม่ได้ หน้าเริ่มต้นที่แสดงเมื่อมีการแสดง iframe ค่าที่เป็นไปได้คือ PLAY_SEARCH, WEB_APPS, PRIVATE_APPS และ STORE_BUILDER (จัดระเบียบแอป) หากไม่ได้ระบุไว้ ลำดับความสำคัญต่อไปนี้จะเป็นตัวกำหนดหน้าเว็บที่จะแสดง: 1. PLAY_SEARCH, 2. PRIVATE_APPS, 3. WEB_APPS, 4. STORE_BUILDER.
locale ไม่มีข้อมูล ไม่ได้ แท็กภาษา BCP 47 ที่มีรูปแบบที่ถูกต้องซึ่งใช้ในการแปลเนื้อหาใน iframe หากไม่ได้ระบุไว้ ค่าเริ่มต้นจะเป็น en_US
mode ค้นหาแอป ไม่ได้ SELECT: ให้ผู้ดูแลระบบไอทีเลือกแอปได้
APPROVE (ค่าเริ่มต้น): ให้ผู้ดูแลระบบไอทีเลือก อนุมัติ และไม่อนุมัติแอปได้ โหมดนี้เลิกใช้งานแล้ว โปรดใช้ SELECT แทน โหมด APPROVE จะใช้งานได้ก็ต่อเมื่อตั้งค่า PlaySearch.ApproveApps เป็น true ในโทเค็นเว็บ
showsearchbox ค้นหาแอป ไม่ได้ TRUE (ค่าเริ่มต้น): แสดงช่องค้นหาและเริ่มคำค้นหาจากใน iframe
FALSE: ช่องค้นหาจะไม่ปรากฏ
search ค้นหาแอป ไม่ได้ สตริงการค้นหา หากระบุไว้ iframe จะนําผู้ดูแลระบบไอทีไปยังผลการค้นหาที่มีสตริงที่ระบุ

ขั้นตอนที่ 3 จัดการเหตุการณ์ iframe

คุณควรจัดการเหตุการณ์ต่อไปนี้ในฐานะส่วนหนึ่งของการผสานรวมด้วย

เหตุการณ์คำอธิบาย
onproductselect ผู้ใช้เลือกหรืออนุมัติแอป ซึ่งจะแสดงออบเจ็กต์ที่มี
{
    "packageName": The package name of the app, e.g. "com.google.android.gm",
    "productId": The product ID of the app, e.g. "app:com.google.android.gm",
    "action": The type of action performed on the document. Possible values are:
    "approved", "unapproved" or "selected." If you implement the iframe in SELECT
    mode, the only possible value is "selected".
}
    
ตัวอย่างด้านล่างแสดงวิธีฟัง onproductselect
iframe.register('onproductselect', function(event) {
  console.log(event);
}, gapi.iframes.CROSS_ORIGIN_IFRAMES_FILTER);


อัปโหลดแอปของคุณเองไปยัง Google Play Store

หากคุณหรือลูกค้าพัฒนาแอป Android คุณสามารถอัปโหลดแอปใน Play Store ได้โดยใช้ Google Play Console

หากไม่ต้องการให้แอปพร้อมใช้งานแบบสาธารณะใน Play Store คุณจำกัดแอปให้อยู่องค์กรเดียวได้โดยใช้ Google Play Console อีกทางเลือกหนึ่งคือการเผยแพร่แอปส่วนตัวแบบเป็นโปรแกรมโดยใช้ Google Play Custom App Publishing API แอปส่วนตัวจะใช้งานได้ที่จำกัดไว้สำหรับองค์กรเท่านั้น ซึ่งยังติดตั้งได้โดยใช้นโยบาย แต่ผู้ใช้ภายนอกองค์กรของคุณจะมองไม่เห็น