คําเชิญให้อัปเกรดคือขั้นตอนของผู้ใช้ที่แสดงฟีเจอร์ใหม่สําคัญที่รวมอยู่ในการอัปเกรดระบบปฏิบัติการ Android หลักที่พร้อมใช้งานในปัจจุบัน
ขั้นตอนนี้มีไว้เพื่อโน้มน้าวให้ผู้ใช้อัปเกรดอุปกรณ์เป็นระบบปฏิบัติการเวอร์ชันล่าสุด
เมื่ออุปกรณ์มีการอัปเกรดระบบปฏิบัติการที่รอการอนุมัติจากผู้ใช้ ผู้ใช้จะได้รับข้อความ Push ที่แสดงฟีเจอร์ใหม่และเชิญให้ทำการอัปเกรด
ผู้ผลิตอุปกรณ์สามารถเปิดใช้ Upgrade Party สำหรับอุปกรณ์ระบบปฏิบัติการ Android ได้โดยส่งคําขอเปิดใช้งานแบบฟอร์มคําเชิญให้อัปเกรด Android
ปรับแต่งประสบการณ์การเชิญให้อัปเกรด
คุณปรับแต่งประสบการณ์การเชิญให้อัปเกรดได้ด้วยวิธีต่อไปนี้
- นำฟีเจอร์ที่ไม่เกี่ยวข้องออก
- อัปเดตภาษาในบล็อกข้อความ
- แก้ไขภาพเคลื่อนไหว สี และแบบอักษรให้เข้ากับแบรนด์ของคุณ
หากต้องการปรับแต่งขั้นตอน ให้อ่านหลักเกณฑ์ในคู่มือสไตล์คำเชิญให้อัปเกรด และใส่ข้อมูลการปรับแต่งในการตอบกลับแบบฟอร์ม
คู่มือแนะนำสไตล์คำเชิญให้อัปเกรด
ใช้คู่มือสไตล์นี้เพื่อแก้ไขรูปลักษณ์คำเชิญให้อัปเกรดให้เหมาะกับแบรนด์ของคุณเอง (หน้าจอ สี แบบอักษร) เราขอแนะนําอย่างยิ่งให้คงขนาดและโครงสร้างให้ใกล้เคียงกับการออกแบบเดิม
ขั้นตอนการเชิญให้อัปเกรดประกอบด้วย 3 องค์ประกอบต่อไปนี้
- หน้าจอแนะนำ
- หน้าจอฟีเจอร์
- หน้าจอปิดท้าย
ภาพเคลื่อนไหวในแต่ละหน้าจอจะช่วยอธิบายฟีเจอร์แต่ละรายการ
หน้าจอแนะนำ
หน้าจอแนะนำมีภาพเคลื่อนไหวสั้นๆ ที่ต้อนรับผู้ใช้และกระตุ้นให้ผู้ใช้เริ่มขั้นตอนที่แสดงในหน้าจอแนะนำ
เลย์เอาต์

ภาพเคลื่อนไหวของอุปกรณ์ประกอบด้วยส่วนต่อไปนี้เสมอ
- พื้นหลังสีขาวและรูปร่างหลากสี
- เฟรมอุปกรณ์
- เนื้อหา UI
การจัดแต่งทรงผม
หากเลือกปรับแต่งสไตล์ Material You คุณจะใช้สีและรูปร่างเริ่มต้นที่แสดงในตัวอย่างได้

หากคุณใช้สีของแบรนด์เอง ให้ตรวจสอบว่าสีนั้นเข้ากันได้ดีกับพื้นหลัง UI
การเคลื่อนไหว
ตัวเลือกที่ 1: มีนาฬิกาบนหน้าจอหลัก
- ตัวเลขจะปรากฏบนหน้าจอ
- ตัวเลขจะย้ายไปอยู่ตรงกลางขณะที่ขนาดลดลง เฟรมโทรศัพท์มือถือจะปรากฏขึ้น
- โทรศัพท์มีขนาดเล็กลง รูปร่างเริ่มปรากฏบนหน้าจอ
- ภาพเคลื่อนไหวเสร็จสมบูรณ์แล้ว รูปทรงจะเคลื่อนไหวช้าๆ ต่อไป
![]() |
![]() |
ตัวเลือกที่ 2: ไม่มีนาฬิกาบนหน้าจอหลัก
- โทรศัพท์มือถือปรากฏขึ้นบนหน้าจอ
- โทรศัพท์จะย้ายไปอยู่ตรงกลางขณะที่ขยายขนาดขึ้น รูปร่างเริ่มปรากฏขึ้นบนหน้าจอ
- โทรศัพท์มีขนาดถึงขีดจํากัดสูงสุดแล้ว แต่รูปร่างยังคงเคลื่อนไหว
![]() |
![]() |
หน้าจอฟีเจอร์
หน้าจอฟีเจอร์แต่ละหน้าจอจะไฮไลต์ฟีเจอร์ในระบบปฏิบัติการใหม่
เลย์เอาต์

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

ภาพเคลื่อนไหวของอุปกรณ์ประกอบด้วยส่วนต่อไปนี้เสมอ
- ครึ่งวงกลมบนพื้นหลัง (พร้อมรูปร่างแบบเคลื่อนไหว)
- เฟรมของอุปกรณ์
- เนื้อหา UI
การจัดแต่งทรงผม
- เลือกสีพื้นหลังที่เข้ากับเนื้อหา UI และลักษณะทั่วไป
- ใช้รูปร่างครึ่งวงกลม
การเคลื่อนไหว
ทำตามขั้นตอนภาพเคลื่อนไหวมาตรฐานของหน้าจอปิดท้าย
- โทรศัพท์มือถือขยับขึ้นเล็กน้อย
- วงกลมจะปรากฏขึ้นในพื้นหลัง
- รูปทรงปรากฏขึ้นจากด้านหลังโทรศัพท์มือถือ
- รูปร่างจะโผล่ออกมาจากพื้นหลังเหมือนกระดาษสีโปรยปราย
![]() |
![]() |
ทดสอบขั้นตอนการเชิญให้อัปเกรด
- ในอุปกรณ์ Android ให้ไปที่การตั้งค่า > Google > การแก้ไขข้อบกพร่องของ Upgrade Party
- เตรียมทริกเกอร์สำหรับคำเชิญให้อัปเกรดสำหรับระบบปฏิบัติการของอุปกรณ์ที่เกี่ยวข้อง (ขึ้นอยู่กับเวอร์ชันระบบปฏิบัติการปัจจุบันและขั้นตอนการทดสอบคำเชิญให้อัปเกรดที่เฉพาะเจาะจง) โดยทำอย่างใดอย่างหนึ่งต่อไปนี้
- คลิกเขียนการอัปเกรดจำลอง (เวอร์ชันปัจจุบัน) (เช่น หากคุณใช้ระบบปฏิบัติการ Android 13 ระบบจะเรียกใช้ขั้นตอนการทดสอบ Android 13)
- คลิกเขียนการอัปเกรดที่รอดำเนินการ (เวอร์ชันปัจจุบัน + 1) (เช่น หากคุณใช้ระบบปฏิบัติการ Android 12 ระบบจะเรียกใช้ขั้นตอนการทดสอบ Android 13)
- คลิกรายงานการอัปเกรดระบบปฏิบัติการ
- คลิกการแจ้งเตือนที่ได้รับ หรือคลิกเปิดคําเชิญให้อัปเกรด
ตัวเลือกทริกเกอร์สำหรับการเชิญให้อัปเกรด
การเปิดใช้งานขั้นตอนการเชิญให้อัปเกรดทำได้ 3 วิธี ดังนี้ 1. อัตโนมัติ 2. ออกอากาศ 3. SDK บริการ Google Play ทำงาน
อัตโนมัติ - การแจ้งเตือนที่ Google ทริกเกอร์ (สำหรับอุปกรณ์ที่ใช้ gOTA เท่านั้น)
สำหรับอุปกรณ์ OEM ที่ใช้งาน gOTA การผสานรวมจะทำงานโดยอัตโนมัติและไม่จำเป็นต้องทำตามขั้นตอนการผสานรวม "อัปเกรด" "เชิญ" เมื่อตรวจพบการอัปเกรดระบบปฏิบัติการหลักที่รอดำเนินการ ระบบจะส่งข้อความ Push ไปยังอุปกรณ์จากบริการ Google Play ซึ่งจะนำไปสู่ขั้นตอนการเชิญให้อัปเกรด
Android Broadcast - การแจ้งเตือนที่ Google ทริกเกอร์ (แนะนำ)
การออกอากาศของแอปเป็นวิธีที่ง่ายที่สุดและแนะนําในการผสานรวมขั้นตอนการอัปเกรดและเชิญ
ตัวรับการออกอากาศช่วยให้คุณเรียกใช้ขั้นตอนการเชิญให้อัปเกรดจากแอปได้โดยใช้ข้อความการออกอากาศ การออกอากาศจะส่งข้อความ Push ไปยังอุปกรณ์จากบริการ Google Play ซึ่งจะนำไปสู่ขั้นตอนการเชิญให้อัปเกรด
ข้อกําหนดเบื้องต้นของการออกอากาศ
หากต้องการเตรียมแอป ให้ทำตามขั้นตอนในส่วนต่อไปนี้
ตรวจสอบว่าไฟล์การกําหนดค่าของแอปใช้ค่าต่อไปนี้
- minSdkVersion 14 ขึ้นไป
- compileSdkVersion เป็น 28 ขึ้นไป
- usesPermission ของ android.permission.RECOVERY
ส่งประกาศ
ดูวิธีการด้านล่างสำหรับแอป OEM (หรือโค้ด) ในการส่งการออกอากาศ Android เพื่อทริกเกอร์ข้อความ Push
ส่งการออกอากาศพร้อมการดำเนินการ
com.google.android.gms.growth.upgradeparty.upgradeinvite.ACTION_SYSTEM_UPDATE
เพิ่มแพ็กเกจ
com.google.android.gms
ลงในการออกอากาศcom.google.android.gms
ข้อกำหนดเพิ่มเติม
ขั้นตอนคำเชิญให้อัปเกรดยังช่วยให้ผู้ใช้อัปเกรดระบบปฏิบัติการได้โดยตรงจากขั้นตอนดังกล่าว
หากต้องการให้การอัปเกรดทำงาน ให้แสดง Intent ที่กําหนดเองซึ่ง Google สามารถเรียกใช้จากขั้นตอนคำเชิญให้อัปเกรดที่ทริกเกอร์การดาวน์โหลดการอัปเดต
ตัวอย่างการใช้การประกาศ
ดูตัวอย่างการออกอากาศของแอปพลิเคชันต่อไปนี้
Context context = getApplicationContext();
Intent upgradeInviteIntent = new Intent()
.setAction( "com.google.android.gms.growth.upgradeparty.upgradeinvite.ACTION_SYSTEM_UPDATE")
.setPackage("com.google.android.gms");
.putExtra("com.google.android.gms.growth.upgradeparty.upgradeinvite.EXTRA_PENDING_ANDROID_OS_VERSION_NUMBER", 14);
context.sendBroadcast(updateIntent);
ค่าของคีย์ EXTRA_PENDING_ANDROID_OS_VERSION_NUMBER
คือ Integer ที่ระบุเวอร์ชันระบบปฏิบัติการที่รอดำเนินการ (ในตัวอย่างนี้ เวอร์ชัน Android ที่ติดตั้งคือ 14) ข้อมูลนี้ใช้เพื่อกำหนดว่าระบบจะเรียกใช้ขั้นตอนการเชิญให้อัปเกรดแบบใด
Play Services SDK - การเปิดใช้งานขั้นตอนเท่านั้น
SDK ของบุคคลที่สามช่วยให้คุณเรียกใช้ขั้นตอนการเชิญให้อัปเกรดจากแอปหรือการแจ้งเตือน OTA ของคุณเองได้ ใช้ API ภายนอกของบุคคลที่สามเพื่อเปิดใช้งานขั้นตอนการเชิญให้อัปเกรด เราไม่แนะนำให้ใช้วิธีนี้
สิ่งที่ต้องมีก่อน
หากต้องการเตรียมแอป ให้ทำตามขั้นตอนในส่วนต่อไปนี้
ตรวจสอบว่าไฟล์บิลด์ของแอปใช้ค่าต่อไปนี้
- minSdkVersion 14 ขึ้นไป
- compileSdkVersion เป็น 28 ขึ้นไป
กำหนดค่าแอป
วิธีกำหนดค่าแอป
1. Extract the library from the provided .zip file, and place it in your
ที่เก็บ
2. เพิ่มทรัพยากร Dependency สำหรับ Google Growth SDK ลงในไฟล์ Gradle ระดับแอปของโมดูล ซึ่งโดยปกติจะเป็น app/build.gradle
dependencies {
implementation files('<PATH_TO_BINARY>/play-services-growth-16.1.0-eap04.aar')
}
หากต้องการระบุทรัพยากร Dependency ของลูกค้า ให้รวมไลบรารีต่อไปนี้
com.google.android.gms:play-services-base:18.0.1 com.google.android.gms:play-services-basement:18.0.0 com.google.android.gms:play-services-tasks:18.0.1
อินทิลีเจนซิ่ง API
หากต้องการเริ่มต้นใช้งานไคลเอ็นต์ ให้ใช้คลาส UpgradeParty ดังนี้
import com.google.android.gms.growth.UpgradeParty; UpgradeParty.getClient(activity);
พารามิเตอร์กิจกรรมควรเป็นออบเจ็กต์กิจกรรมเริ่มต้น
ฟังก์ชัน API
UpgradePartyClient ที่สร้างขึ้นจะแสดงฟังก์ชันต่อไปนี้
isEligibleForUpgradeInvite
import com.google.android.gms.growth.UpgradeInviteEligibilityParams;
Task<Boolean> isEligibleForUpgradeInvite(UpgradeInviteEligibilityParams params);
/** Contains parameters for the eligibility query. */
class UpgradeInviteEligibilityParams {
/** Integer indicating the pending OS version (in this example, the Android version to be installed is 14). This is used to determine which Upgrade Invite flow will be triggered. */
int pendingAndroidOsVersionNumber;
}
แสดงผลงานที่ตรวจสอบแบบไม่พร้อมกันว่าผู้ใช้มีสิทธิ์รับคำเชิญให้อัปเกรดหรือไม่ ค่าบูลีนที่ได้จะระบุว่าผู้ใช้มีสิทธิ์หรือไม่
invokeUpgradeInvite
Task<Void> invokeUpgradeInvite();
เรียกใช้กิจกรรมคำเชิญให้อัปเกรด ออบเจ็กต์ _Task _ ที่ได้จะระบุว่าเกิดข้อผิดพลาดเมื่อเริ่มกิจกรรมหรือไม่
รหัสข้อผิดพลาด
เมธอด API ทั้ง 2 รายการอาจดำเนินการไม่สำเร็จโดยมีข้อยกเว้นประเภท com.google.android.gms.common.api.ApiException ในกรณีเช่นนี้ ผู้โทรจะต้องลองอีกครั้งในภายหลัง รหัสสถานะที่พบบ่อยที่คาดไว้มีดังนี้
- INTERNAL_ERROR - สำหรับข้อผิดพลาดในขั้นตอนของตรรกะพื้นฐาน
- TIMEOUT - หากจัดการคำขอไม่ทันเวลา
- API_NOT_CONNECTED - เมื่อ API ไม่พร้อมใช้งาน (กล่าวคือ โมดูล UpgradeParty ยังไม่พร้อมใช้งาน)
- NETWORK_ERROR - ดำเนินการกับคำขอไม่ได้เนื่องจากข้อผิดพลาดของเครือข่าย
- DEVELOPER_ERROR - แพ็กเกจที่เรียกใช้ไม่ได้รับอนุญาตให้เข้าถึง UpgradeParty API
ตัวอย่างการใช้งาน SDK
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import com.google.android.gms.growth.UpgradeParty;
import com.google.android.gms.growth.UpgradePartyClient;
public class SampleActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
final UpgradePartyClient client = UpgradeParty.getClient(this);
// Hide the invocation button initially
View startUpgradeInviteButton = findViewById(R.id.__some_button__);
startUpgradeInviteButton.setVisibility(View.GONE);
// Register an onClick handler to invoke the Upgrade Party Activity
startUpgradeInviteButton
.setOnClickListener(
view -> {
client
.invokeUpgradeInvite()
.addOnCompleteListener(
task -> {
if (!task.isSuccessful()) {
// Do something with error, see task.getException()
}
});
});
}
// Check if eligible for an Upgrade Party
client
.isEligibleForUpgradeInvite()
.addOnCompleteListener(
task -> {
if (!task.isSuccessful()) {
// Do something with error, see task.getException()
} else {
// Show/Hide invocation button, based on the result
int visibility =
task.getResult() ? View.VISIBLE : View.GONE;
startUpgradeInviteButton.setVisibility(visibility);
}
});
}