ข้อจำกัดความรับผิด: สรุปนโยบายเป็นเพียงภาพรวมเท่านั้น โปรดอ่านนโยบายฉบับเต็มทุกครั้งเพื่อให้เป็นไปตามข้อกำหนด นโยบายฉบับเต็มจะมีผลเหนือกว่าในกรณีที่มีความขัดแย้ง
Google Play ห้ามไม่ให้แอป (หรือ SDK บุคคลที่สามในแอปของคุณ) เข้าถึงโดยไม่ได้รับอนุญาตหรือทำการรบกวนอุปกรณ์ของผู้ใช้, อุปกรณ์อื่นๆ, เครือข่าย, API, บริการ, แอปอื่นๆ ในอุปกรณ์, บริการใดๆ ของ Google หรือเครือข่ายของผู้ให้บริการที่ได้รับอนุญาต ซึ่งครอบคลุมถึงพฤติกรรมต่างๆ ที่เป็นอันตราย มีความเสี่ยงสูง หรือเป็นการรบกวน เช่น การอัปเดตแอปเองภายนอก Play Store, การดาวน์โหลดโค้ดสั่งการที่ไม่ได้รับอนุญาต, การใช้ประโยชน์จากช่องโหว่ด้านความปลอดภัย, การอำนวยความสะดวกในการแฮ็ก หรือการสร้างกลโกงในเกมที่ส่งผลกระทบต่อแอปอื่น การปกป้องความสมบูรณ์ของอุปกรณ์ของผู้ใช้และระบบนิเวศที่กว้างขึ้นคือสิ่งสำคัญที่สุด โปรดอ่านนโยบายฉบับเต็มเพื่อให้เป็นไปตามข้อกำหนด
เราไม่อนุญาตแอปที่แทรกแซง ก่อกวน สร้างความเสียหาย หรือเข้าถึงอุปกรณ์ของผู้ใช้ในลักษณะที่ไม่ได้รับอนุญาต รวมถึงอุปกรณ์หรือคอมพิวเตอร์อื่นๆ, เซิร์ฟเวอร์, เครือข่าย, Application Programming Interface (API) หรือบริการต่างๆ รวมถึงแต่ไม่จำกัดเฉพาะแอปอื่นๆ ในอุปกรณ์นั้น, บริการใดๆ ของ Google หรือเครือข่ายผู้ให้บริการที่ได้รับอนุญาต
แอปใน Google Play ต้องเป็นไปตามข้อกำหนดการเพิ่มประสิทธิภาพระบบเริ่มต้นของ Android ที่บันทึกไว้ในหลักเกณฑ์ด้านคุณภาพที่สำคัญของแอปสำหรับ Google Play
แอปที่เผยแพร่ผ่าน Google Play ต้องไม่แก้ไข แทนที่ หรืออัปเดตตัวเองโดยใช้วิธีการอื่นๆ ที่นอกเหนือจากกลไกการอัปเดตของ Google Play และในทำนองเดียวกัน แอปต้องไม่ดาวน์โหลดโค้ดสั่งการ (เช่น ไฟล์ dex, JAR, .so) จากแหล่งอื่นที่ไม่ใช่ Google Play ข้อจำกัดนี้ไม่ใช้กับโค้ดที่ทำงานในเครื่องเสมือนหรืออินเตอร์พรีเตอร์ที่ให้สิทธิ์โดยอ้อมในการเข้าถึง Android API (เช่น JavaScript ใน WebView หรือเบราว์เซอร์)
แอปหรือโค้ดของบุคคลที่สาม (เช่น SDK) ที่ใช้ภาษาที่แปลโดยอินเตอร์พรีเตอร์แล้ว (JavaScript, Python, Lua เป็นต้น) ซึ่งโหลดขณะรันไทม์ (เพราะไม่ได้รวมเป็นแพ็กเกจกับแอป เป็นต้น) ต้องไม่อนุญาตให้มีการละเมิดนโยบายของ Google Play
เราไม่อนุญาตโค้ดที่แนะนำหรือใช้ประโยชน์จากช่องโหว่ด้านความปลอดภัย อ่านข้อมูลเกี่ยวกับโปรแกรมปรับปรุงความปลอดภัยของแอปเพื่อดูปัญหาด้านความปลอดภัยล่าสุดที่แจ้งไปยังนักพัฒนาแอป
ตัวอย่างการละเมิดด้านการใช้อุปกรณ์และเครือข่ายในทางที่ผิด
- แอปที่บล็อกหรือแทรกแซงแอปอื่นซึ่งแสดงโฆษณา
- แอปโกงการเล่นเกมที่ส่งผลกระทบต่อการเล่นเกมของแอปอื่นๆ
- แอปที่สนับสนุนหรือแสดงวิธีการแฮ็กบริการ ซอฟต์แวร์ ฮาร์ดแวร์ หรือหลบเลี่ยงการรักษาความปลอดภัย
- แอปที่เข้าถึงหรือใช้บริการหรือ API ในลักษณะที่ละเมิดข้อกำหนดในการให้บริการ
- แอปที่ไม่มีสิทธิ์ในการเพิ่มรายการที่อนุญาตและพยายามข้ามการจัดการพลังงานของระบบ
- แอปที่อำนวยความสะดวกด้านบริการพร็อกซีให้แก่บุคคลที่สามอาจทำเช่นนั้นได้ในแอปก็ต่อเมื่อบริการดังกล่าวเป็นจุดประสงค์หลักของแอปที่แสดงต่อผู้ใช้ในแอป
- แอปหรือโค้ดของบุคคลที่สาม (เช่น SDK) ที่ดาวน์โหลดโค้ดสั่งการ เช่น ไฟล์ dex หรือโค้ดแบบเนทีฟ จากแหล่งอื่นที่ไม่ใช่ Google Play
- แอปที่ติดตั้งแอปอื่นๆ ในอุปกรณ์โดยไม่ได้รับคำยินยอมจากผู้ใช้ล่วงหน้า
- แอปที่อำนวยความสะดวกหรือลิงก์ไปยังการเผยแพร่หรือการติดตั้งซอฟต์แวร์อันตราย
- แอปหรือโค้ดของบุคคลที่สาม (เช่น SDK) ที่มี WebView ซึ่งเพิ่มอินเทอร์เฟซของ JavaScript ที่โหลดเนื้อหาเว็บที่ไม่น่าเชื่อถือ (เช่น URL ที่ขึ้นต้นด้วย http://) หรือ URL ที่ไม่ได้รับการยืนยันซึ่งได้จากแหล่งที่มาซึ่งไม่น่าเชื่อถือ (เช่น URL ที่ได้มาด้วย Intent ที่ไม่น่าเชื่อถือ)
- แอปที่ใช้สิทธิ์ Intent แบบเต็มหน้าจอเพื่อบังคับให้ผู้ใช้โต้ตอบกับโฆษณาหรือการแจ้งเตือนที่รบกวนผู้ใช้
- แอปที่หลบเลี่ยงการปกป้องแซนด์บ็อกซ์ของ Android เพื่อรับกิจกรรมหรือตัวตนของผู้ใช้จากแอปอื่นๆ
ข้อควรพิจารณาที่สำคัญ
| ควรทำ | ไม่ควรทำ |
| ตรวจสอบว่าแอปและ SDK ใดๆ ที่ผสานรวมไว้เป็นไปตามข้อกำหนดการเพิ่มประสิทธิภาพระบบของ Android ในหลักเกณฑ์หลักด้านคุณภาพของแอป | ห้ามติดตั้งแอปอื่นในอุปกรณ์โดยไม่ได้รับความยินยอมของผู้ใช้ |
ปฏิบัติตามการตั้งค่า FLAG_SECURE และคอนเทนเนอร์ในอุปกรณ์ต้องปฏิบัติตาม REQUIRE_SECURE_ENV |
ห้ามสนับสนุนบริการพร็อกซีแก่บุคคลที่สาม ยกเว้นว่าจะเป็นวัตถุประสงค์หลักที่แสดงต่อผู้ใช้ของแอป |
| ใช้งานการโอนข้อมูลที่ผู้ใช้เริ่มต้นสำหรับการโอนข้อมูลเครือข่ายที่ที่ผู้ใช้เริ่มต้นเท่านั้น ซึ่งจะทำงานตามระยะเวลาที่ต้องการเท่านั้น | ห้ามใช้ SDK ของบุคคลที่สามในแอปของคุณที่ดาวน์โหลดโค้ดปฏิบัติการ (เช่น dex or .so files) จากภายนอก Google Play (ยกเว้นใน VM/อินเทอร์พรีเตอร์) |
| อ่านข้อมูลเกี่ยวกับโปรแกรมปรับปรุงความปลอดภัยของแอปเพื่อดูปัญหาด้านความปลอดภัยล่าสุดที่แจ้งไปยังนักพัฒนาแอป | ห้ามข้ามการจัดการพลังงานระบบ ยกเว้นว่าจะมีสิทธิ์ |
| เป็นไปตามนโยบายบริการที่ทำงานอยู่เบื้องหน้า | ห้ามแอปบล็อกหรือแทรกแซงแอปอื่นซึ่งแสดงโฆษณา |
ห้ามใช้สิทธิ์ Intent แบบเต็มหน้าจอ เพื่อบังคับให้โต้ตอบกับการแจ้งเตือนโฆษณาที่รบกวนผู้ใช้ |
การใช้บริการที่ทำงานอยู่เบื้องหน้า
นโยบายสิทธิ์การใช้บริการที่ทำงานอยู่เบื้องหน้าช่วยให้มั่นใจถึงความโปร่งใสของการจัดการข้อมูลผู้ใช้ ความเป็นส่วนตัว และประสิทธิภาพการทำงานสูงสุดของอุปกรณ์ สำหรับแอปที่กำหนดเป้าหมายเป็น Android 14 ขึ้นไป คุณต้องประกาศประเภทของบริการที่ทำงานอยู่เบื้องหน้า (FGS) ที่ถูกต้องในไฟล์ Manifest และ Google Play Console พร้อมทั้งให้คำอธิบาย ผลกระทบต่อผู้ใช้ และวิดีโอสาธิตเพื่อแสดงเหตุผลในการใช้งานโดยอิงตามการดำเนินการที่ผู้ใช้เริ่มต้นและรับรู้ได้ โปรดอ่านนโยบายฉบับเต็มเพื่อให้เป็นไปตามข้อกำหนด
สิทธิ์สำหรับบริการที่ทำงานอยู่เบื้องหน้าทำให้การใช้งานบริการที่ทำงานอยู่เบื้องหน้าซึ่งแสดงต่อผู้ใช้มีความเหมาะสม สำหรับแอปที่กำหนดเป้าหมายเป็น Android 14 ขึ้นไป คุณต้องระบุประเภทบริการที่ทำงานอยู่เบื้องหน้าที่ถูกต้องสำหรับแต่ละบริการที่ใช้งานในแอป รวมถึงประกาศสิทธิ์บริการที่ทำงานอยู่เบื้องหน้าที่เหมาะสมกับประเภทดังกล่าวด้วย ตัวอย่างเช่น หากกรณีการใช้งานของแอปต้องใช้ตำแหน่งทางภูมิศาสตร์ คุณต้องประกาศสิทธิ์ FOREGROUND_SERVICE_LOCATION ในไฟล์ Manifest ของแอป
แอปจะได้รับอนุญาตให้ประกาศสิทธิ์บริการที่ทำงานอยู่เบื้องหน้าเฉพาะในการใช้งานต่อไปนี้
- ให้บริการฟีเจอร์ที่เป็นประโยชน์ต่อผู้ใช้และเกี่ยวข้องกับฟังก์ชันหลักของแอป
- เริ่มต้นโดยผู้ใช้หรือผู้ใช้มองเห็นได้ (เช่น เสียงจากเพลง แคสต์สื่อไปยังอุปกรณ์อื่น การแจ้งเตือนผู้ใช้ที่ชัดเจนและแม่นยำ การส่งคำขอถึงผู้ใช้เพื่ออัปโหลดรูปภาพไปยังระบบคลาวด์)
- ผู้ใช้ตัดหรือหยุดการทำงานได้
- หากถูกขัดจังหวะหรือเลื่อนการทำงาน จะก่อให้เกิดประสบการณ์ของผู้ใช้ในเชิงลบหรือทำให้ฟีเจอร์ที่ผู้ใช้คาดหวังทำงานไม่ได้เต็มประสิทธิภาพ (เช่น การโทรศัพท์ต้องเริ่มทำงานทันทีโดยที่ระบบไม่สามารถเลื่อนการทำงานได้)
- ทำงานเท่าที่จำเป็นต่อการดำเนินการให้เสร็จสมบูรณ์
กรณีการใช้งานบริการที่ทำงานอยู่เบื้องหน้าต่อไปนี้ได้รับการยกเว้นจากเกณฑ์ข้างต้น
- บริการที่ทำงานอยู่เบื้องหน้าประเภท systemExempted หรือ shortService
- บริการที่ทำงานอยู่เบื้องหน้าประเภท dataSync เฉพาะเวลาที่ใช้ฟีเจอร์การนำส่งเนื้อหา Play
ดูคำอธิบายเพิ่มเติมเกี่ยวกับบริการที่ทำงานอยู่เบื้องหน้าได้ที่นี่
ข้อควรพิจารณาที่สำคัญ
| ควรทำ | ไม่ควรทำ |
| เรียกใช้ FGS นานเท่าที่จำเป็นต่อการทำงานให้เสร็จสมบูรณ์ | อย่าใช้ FGS หากการจัดการระบบงานของคุณไม่ได้ส่งผลเสียต่อประสบการณ์ของผู้ใช้ในแอป ลองพิจารณาทางเลือกอื่น เช่น WorkManager |
| ตรวจสอบว่า FGS มอบฟีเจอร์หลักของแอปที่เป็นประโยชน์ต่อผู้ใช้ เริ่มต้นทำงานโดยผู้ใช้ มองเห็นได้ในการแจ้งเตือน หรือผู้ใช้รับรู้ได้ (เช่น มีเสียงจากการเล่นเพลง) | อย่าประกาศประเภท FGS ที่ใช้งานไม่ได้หรือไม่ถูกต้องในไฟล์ Manifest ของแอป |
| ส่งแบบฟอร์มการประกาศใน Play Console หากกำหนดเป้าหมายเป็น Android 14 ขึ้นไป และอธิบาย Use Case สำหรับสิทธิ์บริการที่ทำงานอยู่เบื้องหน้า (FGS) แต่ละสิทธิ์ที่ใช้ ตรวจสอบว่าได้เลือกประเภท FGS ที่เหมาะสม |
งานการโอนข้อมูลที่เริ่มต้นโดยผู้ใช้
Google Play จัดทำหลักเกณฑ์ที่เข้มงวดสำหรับแอปที่ใช้ API งานโอนข้อมูลที่ผู้ใช้เริ่มต้น เพื่อให้ผู้ใช้เป็นผู้ควบคุมข้อมูลและป้องกันกิจกรรมในเบื้องหลังที่เกิดขึ้นเป็นเวลานาน โดยผู้ใช้ต้องเป็นผู้เรียกใช้การโอนข้อมูลโดยตรง เพื่อให้แน่ใจว่าแอปดำเนินการตามคำสั่งแทนที่จะเริ่มต้นการโอนเองอย่างอิสระ การโอนเหล่านี้ใช้สำหรับงานการโอนข้อมูลเครือข่ายโดยเฉพาะและต้องดำเนินการภายในระยะเวลาที่กำหนดไว้เพื่อให้การดำเนินการที่ขอเสร็จสมบูรณ์เท่านั้น โปรดอ่านนโยบายฉบับเต็มเพื่อให้เป็นไปตามข้อกำหนด
แอปจะได้รับอนุญาตให้ใช้ API งานการโอนข้อมูลที่เริ่มต้นโดยผู้ใช้เฉพาะในกรณีการใช้งานที่
- เริ่มต้นโดยผู้ใช้
- ใช้สำหรับงานการโอนข้อมูลเครือข่าย
- ทำงานเท่าที่จำเป็นต่อการถ่ายโอนข้อมูลให้เสร็จสมบูรณ์
ดูคำอธิบายเพิ่มเติมเกี่ยวกับการใช้งาน API การโอนข้อมูลที่เริ่มต้นโดยผู้ใช้ได้ที่นี่
ข้อควรพิจารณาที่สำคัญ
| สิ่งที่ควรทำ | สิ่งที่ไม่ควรทำ |
| เริ่มการโอนด้วยการดำเนินการของผู้ใช้ | ห้ามเริ่มการโอนโดยอัตโนมัติ |
| ใช้สำหรับงานการโอนข้อมูลเครือข่ายเท่านั้น | ห้ามใช้ API นี้สำหรับงานที่ไม่เกี่ยวข้องกับเครือข่าย |
| หยุดดำเนินการเมื่อการโอนเสร็จสิ้น | ห้ามใช้งานนานเกินกว่าที่จำเป็น |
ข้อกำหนดของ Flag Secure
FLAG_SECURE คือ Flag การแสดงผลที่แอปประกาศ ซึ่งบ่งชี้ว่าควรมีการจำกัดการแสดงข้อมูลที่ละเอียดอ่อนใน UI เพื่อรักษาความปลอดภัยของแพลตฟอร์ม โดยป้องกันการจับภาพหน้าจอ ตลอดจนการดูและการบันทึกภาพจอแสดงผลที่ไม่ปลอดภัย นักพัฒนาแอปใช้ Flag นี้เมื่อไม่ควรออกอากาศหรือดูเนื้อหานอกแอป/อุปกรณ์ Google Play กำหนดให้ทุกแอปเคารพการประกาศ FLAG_SECURE ของแอปอื่นๆ และไม่ข้ามการประกาศเหล่านี้เพื่อรักษาความปลอดภัยและความเป็นส่วนตัว โปรดอ่านนโยบายฉบับเต็มเพื่อให้เป็นไปตามข้อกำหนด
FLAG_SECURE เป็นแฟล็กการแสดงผลที่ประกาศในโค้ดของแอปเพื่อระบุว่า UI ของแอปมีข้อมูลที่ละเอียดอ่อนซึ่งมีไว้สำหรับแพลตฟอร์มที่ปลอดภัยขณะใช้แอปเท่านั้น แฟล็กนี้ออกแบบมาเพื่อป้องกันไม่ให้ข้อมูลปรากฏในภาพหน้าจอหรือดูได้ในจอแสดงผลที่ไม่ปลอดภัย นักพัฒนาแอปจะประกาศแฟล็กนี้ เมื่อไม่ควรเผยแพร่ ดู หรือส่งเนื้อหาของแอปออกจากตัวแอปหรืออุปกรณ์ของผู้ใช้
เพื่อความปลอดภัยและความเป็นส่วนตัว แอปทั้งหมดที่เผยแพร่ใน Google Play จะต้องเคารพการประกาศ FLAG_SECURE ของแอปอื่นๆ ซึ่งหมายความว่าแอปต้องไม่อำนวยความสะดวกหรือสร้างวิธีแก้ปัญหาชั่วคราวเพื่อข้ามการตั้งค่า FLAG_SECURE ในแอปอื่นๆ
แอปที่มีคุณสมบัติเป็นเครื่องมือช่วยเหลือพิเศษจะได้รับการยกเว้นจากข้อกำหนดนี้ ตราบใดที่แอปไม่ส่ง บันทึก หรือแคชเนื้อหาที่ได้รับการคุ้มครองโดย FLAG_SECURE สำหรับการเข้าถึงนอกอุปกรณ์ของผู้ใช้ ข้อควรพิจารณาที่สำคัญ
| สิ่งที่ควรทำ | สิ่งที่ไม่ควรทำ |
ประกาศ FLAG_SECURE สำหรับข้อมูลที่ละเอียดอ่อนใน UI ที่ต้องมีการป้องกันการจับภาพ |
ห้ามข้ามหรือสร้างวิธีแก้ปัญหาชั่วคราวสำหรับการตั้งค่า |
เคารพการประกาศ FLAG_SECURE ของแอปอื่นๆ เพื่อรักษาความปลอดภัยและความเป็นส่วนตัว |
ห้ามส่ง บันทึก หรือแคชเนื้อหาที่มีการคุ้มครองโดย FLAG_SECURE นอกอุปกรณ์ แม้จะเป็นเครื่องมือช่วยเหลือพิเศษก็ตาม |
แอปที่เรียกใช้คอนเทนเนอร์ Android ในอุปกรณ์
เพื่อป้องกันข้อกังวลเกี่ยวกับความเป็นส่วนตัวและความปลอดภัย นักพัฒนาแอปสามารถใช้ Flag `REQUIRE_SECURE_ENV` ในไฟล์ Manifest ของแอปได้ เมื่อแอปคอนเทนเนอร์ Android ในอุปกรณ์ขาดฟีเจอร์ความปลอดภัยที่สมบูรณ์ของระบบปฏิบัติการ Android Flag นี้บ่งชี้ว่าแอปไม่ควรทำงานในสภาพแวดล้อมจำลอง แอปที่ให้บริการคอนเทนเนอร์เหล่านี้ต้องปฏิบัติตาม Flag นี้โดยการไม่โหลดแอปที่มี Flag และห้ามข้ามมาตรการความปลอดภัยนี้ โปรดอ่านนโยบายฉบับเต็มเพื่อให้เป็นไปตามข้อกำหนด
แอปคอนเทนเนอร์ Android ในอุปกรณ์ให้สภาพแวดล้อมที่จำลองระบบปฏิบัติการ Android ทั้งหมดหรือบางส่วนที่เกี่ยวข้อง ประสบการณ์การใช้งานภายในสภาพแวดล้อมเหล่านี้อาจไม่แสดงถึงฟีเจอร์ความปลอดภัยชุดเต็มของ Android ซึ่งเป็นเหตุผลที่ทำให้นักพัฒนาแอปสามารถเลือกเพิ่ม Flag ไฟล์ Manifest ของสภาพแวดล้อมที่ปลอดภัยเพื่อสื่อสารกับคอนเทนเนอร์ Android ในอุปกรณ์ว่าต้องไม่มีการปฏิบัติการในสภาพแวดล้อม Android แบบจำลอง
Flag ไฟล์ Manifest ในสภาพแวดล้อมที่ปลอดภัย
- ตรวจสอบ Flag นี้ในไฟล์ Manifest ของแอปต่างๆ ที่มีจุดประสงค์ที่จะโหลดในคอนเทนเนอร์ Android ในอุปกรณ์ของแอป
- ไม่โหลดแอปที่ประกาศ Flag นี้ในคอนเทนเนอร์ Android ในอุปกรณ์ของแอป
- ไม่ทำหน้าที่เป็นพร็อกซีโดยการสกัดกั้นหรือเรียกใช้ API ในอุปกรณ์ เพื่อให้ดูเหมือนว่ามีการติดตั้งไว้ในคอนเทนเนอร์
- ไม่อำนวยความสะดวกหรือสร้างวิธีแก้ปัญหาเบื้องต้นเพื่อหลีกเลี่ยง Flag (เช่น การโหลดแอปเวอร์ชันเก่าเพื่อหลีกเลี่ยง Flag REQUIRE_SECURE_ENV ของแอปปัจจุบัน)
ข้อควรพิจารณาที่สำคัญ
| สิ่งที่ควรทำ | สิ่งที่ไม่ควรทำ |
แอปที่ให้บริการคอนเทนเนอร์ในอุปกรณ์ต้องตรวจหา Flag REQUIRE_SECURE_ENV ในไฟล์ Manifest ของแอปอื่นๆ และไม่โหลดแอปเหล่านั้น |
ห้ามเพิกเฉยต่อ Flag คุณจะโหลดแอปลงในคอนเทนเนอร์ไม่ได้หากแอปประกาศ Flag REQUIRE_SECURE_ENV |
| หลีกเลี่ยงการใช้วิธีแก้ปัญหาชั่วคราว ห้ามไม่ให้คุณข้าม Flag ดังกล่าว เช่น ผ่านการโหลดแอปเวอร์ชันเก่ากว่า | ห้ามข้ามมาตรการรักษาความปลอดภัย ห้ามสร้างวิธีแก้ปัญหาชั่วคราวเพื่อลบล้างค่ากำหนดด้านการรักษาความปลอดภัยของแอป |
| หลีกเลี่ยงการทำหน้าที่เป็นพร็อกซี API ห้ามทำหน้าที่เป็นพร็อกซีโดยการสกัดกั้นหรือเรียกใช้ API นอกคอนเทนเนอร์ | ห้ามทำให้ดูเหมือนว่าแอปกำลังทำงานในสภาพแวดล้อมที่ปลอดภัยเมื่อไม่ได้เป็นเช่นนั้น |
| ดูข้อกำหนดด้านนโยบายสำหรับคอนเทนเนอร์ Android ในอุปกรณ์ |