สร้างแอป Wear OS สําหรับจีน

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

ใช้บริการ Google Play เวอร์ชันที่ถูกต้อง

บริการ Google Play เวอร์ชัน 10.2.0 รองรับ Fused Location Provider API และ Data Layer API ทั่วโลก คุณต้องใช้บริการ Google Play เวอร์ชันนี้หากใช้ API เหล่านี้เพื่อให้มั่นใจว่าอุปกรณ์ Wear OS หลากหลายรุ่นในจีนจะได้รับการรองรับ ส่วนในกรณีอื่นๆ ทรัพยากร Dependency นี้จะไม่บังคับ

หมายเหตุ: แม้ว่าบริการ Google Play จะมี API สําหรับแอป Wear OS แต่แอป Wear OS สําหรับจีนควรใช้ API ที่เกี่ยวข้องกับ GoogleApiClient ต่อไป ดูการเข้าถึง Wearable API

Fused Location Provider API

หากคุณใช้ Fused Location Provider API ให้ใส่ทรัพยากร Dependency ต่อไปนี้ในไฟล์ build.gradle ของโมดูล Wear OS

Groovy

dependencies {
    ...
    implementation 'com.google.android.gms:play-services-location:10.2.0'
}

Kotlin

dependencies {
    ...
    implementation("com.google.android.gms:play-services-location:10.2.0")
}

API ชั้นข้อมูล

หากแอปใช้ Data Layer API คุณจะต้องเพิ่มบรรทัดต่อไปนี้ลงในไฟล์ build.gradle ของโมดูล Wear OS บรรทัดนี้ต้องใช้ไลบรารีไคลเอ็นต์เวอร์ชัน 10.2.0

ดึงดูด

dependencies {
    ...
    implementation 'com.google.android.gms:play-services-wearable:10.2.0'
    ...
}

Kotlin

dependencies {
    ...
    implementation("com.google.android.gms:play-services-wearable:10.2.0")
    ...
}

เพิ่มบรรทัดต่อไปนี้ลงในไฟล์ build.gradle ของข้อบังคับสำหรับอุปกรณ์เคลื่อนที่ แทนที่การอ้างอิงบริการ Google Play ด้วยเวอร์ชัน 10.2.0

Groovy

dependencies {
    ...
    implementation 'com.google.android.gms:play-services-wearable:10.2.0'
}

Kotlin

dependencies {
    ...
    implementation("com.google.android.gms:play-services-wearable:10.2.0")
}

การตรวจสอบสิทธิ์

ก่อนใช้การตรวจสอบสิทธิ์ ให้ตรวจสอบ Use Case เพื่อดูว่าจำเป็นต้องใช้การตรวจสอบสิทธิ์จริงหรือไม่ ตัวอย่างเช่น สำหรับแอปที่แสดงพยากรณ์อากาศ อาจไม่จำเป็นต้องลงชื่อเข้าใช้ ดังนั้นจึงต้องมีการตรวจสอบสิทธิ์

หากคุณกำหนดให้มีการตรวจสอบสิทธิ์ เราขอแนะนำให้ใช้ไลบรารี AndroidX OAuth ซึ่งต้องใช้ขั้นตอนการให้สิทธิ์รหัสผ่านด้วย PKCE คุณยังใช้วิธีการอื่นๆ ที่อธิบายไว้ในการตรวจสอบสิทธิ์ในอุปกรณ์ที่สวมใส่ได้ได้ด้วย ไม่แนะนําให้ใช้ไลบรารีการสนับสนุนอุปกรณ์ที่สวมใส่ได้

ดูข้อมูลเพิ่มเติมได้ที่ตัวอย่าง OAuth ของ Wear OS ใน GitHub

การแจ้งเตือนที่บริดจ์

ระบบไม่รองรับ การแจ้งเตือนที่เชื่อมโยงในจีน การแจ้งเตือนทางโทรศัพท์จะเชื่อมต่อกับ Wear OS เฉพาะในกรณีที่อุปกรณ์ Wear OS เชื่อมต่อกับโทรศัพท์โดยใช้บ��ูทูธเท่านั้น

ความเข้ากันได้ของตำแหน่งและพิกัดการแมป

ใช้ FusedLocationProvider (FLP) เพื่อตรวจหาตำแหน่งของผู้ใช้ในจีน เช่นเดียวกับที่คุณทำในส่วนที่เหลือของโลก วิธีนี้ช่วยให้มั่นใจได้ว่าแอปของคุณจะพิจารณาข้อมูลที่ดีที่สุด ไม่ว่าจะใช้ฮาร์ดแวร์ของนาฬิกาและแพลตฟอร์มโทรศัพท์ที่จับคู่กับนาฬิกาใดก็ตาม การใช้ FLP ยังเพิ่มการเพิ่มประสิทธิภาพแบตเตอรี่ที่มีอยู่ในแพลตฟอร์ม Wear OS ด้วย

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

การสนับสนุนสำหรับ Google Fit

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

การรองรับการสั่งงานด้วยเสียง

แพลตฟอร์ม Wear OS มี Intent เสียงหลายรายการที่อิงตามการกระทำของผู้ใช้ เช่น _"แสดงอัตราการเต้นของหัวใจ"_ หรือ _"ตั้งปลุก"_ ซึ่งจะช่วยให้ผู้ใช้พูดสิ่งที่ต้องการทำและช่วยให้ระบบค้นหากิจกรรมที่ดีที่สุดที่จะเริ่มต้น

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

ต่อไปนี้คือรายการ Intent เสียงที่แพลตฟอร์ม Wear OS รองรับ

หมวดหมู่ ตัวอย่าง ข้อกำหนดของ Intent
บริการเรียกรถ 打车去三里屯 การดำเนินการ

com.google.android.gms.actions.RESERVE_TAXI_RESERVATION

พิเศษ

to: ปลายทางที่รู้จัก

โดยคุณจะใช้หรือไม่ใช้ก็ได้

ตั้งปลุก 设置一个明早七点的闹钟 การดำเนินการ

android.intent.action.SET_ALARM

เพิ่มเติม

android.provider.AlarmClock.EXTRA_HOUR: จำนวนเต็มที่มีชั่วโมงการปลุก

android.provider.AlarmClock.EXTRA_MINUTES: จำนวนเต็มที่มีนาทีการปลุก

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

ตั้งเวลา ตั้งค่าการนับถอยหลัง 3 นาที การดำเนินการ

android.intent.action.SET_TIMER

พิเศษ

android.provider.AlarmClock.EXTRA_LENGTH: จำนวนเต็มในช่วง 1 ถึง 86400 (จำนวนวินาทีใน 24 ชั่วโมง) ซึ่งแสดงระยะเวลาของตัวจับเวลา

เริ่มต้นจับเวลา 开始计时 การดำเนินการ

com.google.android.wearable.action.STOPWATCH

เริ่มหรือหยุดปั่นจักรยาน 开始骑车 การดำเนินการ

vnd.google.fitness.TRACK

ประเภท MIME

vnd.google.fitness.activity/biking

พิเศษ

actionStatus: สตริงที่มีค่า ActiveActionStatus เมื่อเริ่มต้น และ CompletedActionStatus เมื่อหยุด

เริ่มหรือหยุดการวิ่ง 开始跑步 การดำเนินการ

vnd.google.fitness.TRACK

ประเภท MIME

vnd.google.fitness.activity/running

เพิ่มเติม

actionStatus: สตริงที่มีค่า ActiveActionStatus เมื่อเริ่มต้น และ CompletedActionStatus เมื่อหยุด

เริ่มหรือหยุดการออกกำลังกาย 开始锻炼 การดำเนินการ

vnd.google.fitness.TRACK

ประเภท MIME

vnd.google.fitness.activity/other

เพิ่มเติม

actionStatus: สตริงที่มีค่า ActiveActionStatus เมื่อเริ่มต้น และ CompletedActionStatus เมื่อหยุด

แสดงอัตราการเต้นของหัวใจ ���看心率 การดำเนินการ

vnd.google.fitness.VIEW

ประเภท MIME

vnd.google.fitness.data_type/com.google.heart_rate.bpm

แสดงจำนวนก้าว 查看步数 การดำเนินการ

vnd.google.fitness.VIEW

ประเภท MIME

vnd.google.fitness.data_type/com.google.step_count.cumulative

การไปยังรายการต่างๆ 导航去三里屯 การดำเนินการ

android.intent.action.VIEW

ข้อมูล

geo:latitude,longitude?q=融科资讯中心

Voice Assistant ยังใช้Intent ทั่วไปของ Android ที่มีอยู่เพื่อเรียกใช้ลักษณะการทำงานบางอย่างได้หากมี

การรองรับโปรแกรมจำลอง

คุณใช้ภาพโปรแกรมจำลอง Wear OS เวอร์ชันจีนเพื่อทดสอบแอปได้ Android Studio 3.0 ขึ้นไปรองรับการดำเนินการนี้

หากต้องการทดสอบแอปในโปรแกรมจำลองเวอร์ชันจีน ให้ทำตามขั้นตอนต่อไปนี้

  1. ติดตั้ง Android Emulator
  2. ดาวน์โหลดรูปภาพของ Wear OS สำหรับจีนจากเครื่องมือจัดการ SDK ใช้เวอร์ชันสำหรับ Wear OS 3.5 (API ระดับ 30)
  3. เลือกรูปภาพ Wear OS for China เมื่อสร้างโปรไฟล์ AVD
  4. เรียกใช้โปรแกรมจำลอง Wear OS สำหรับประเทศจีนเพื่อการพัฒนา
  5. รูปที่ 1 ตัวอย่างโปรแกรมจำลอง Wear OS เวอร์ชันจีน

โปรแกรมจำลอง Wear OS เวอร์ชันนี้มาพร้อมกับแอปที่ติดตั้งไว้ล่วงหน้าหลายแอป ได้แก่

  • โหมดแอมเบียนท์
  • รายชื่อติดต่อ
  • การป้อนข้อมูลด้วยลายมือของ Google
  • บริการ Google Play
  • บริการด้านสุขภาพสำหรับ Wear OS
  • การจดจำคำสั่งให้ดำเนินการสำหรับอุปกรณ์ LE
  • พินอิน
  • Play Store (ปรับให้เข้ากับอุปกรณ์ในประเทศจีน)
  • นาฬิกาพก
  • TalkBack
  • หน้าปัด (ทั้งเวอร์ชันแอนะล็อกและดิจิทัล)
  • บริการหลักของ Wear

เริ่มใช้ช่องบลูทูธและ Wi-Fi สำหรับแอปที่เฉพาะเจาะจง

Wear OS จะกำหนดเส้นทางคำขอเครือข่ายโดยอัตโนมัติ ในกรณีส่วนใหญ่ แอปไม่จำเป็นต้องเปิดช่องบลูทูธและ Wi-Fi สำหรับแอปโดยเฉพาะ

หากแอปส่งคำขอช่องบลูทูธและ Wi-Fi สำหรับแอปโดยเฉพาะในประเทศจีน คำขอจะ ไม่สำเร็จโดยไม่มีการแจ้งเตือน แต่ระบบจะแสดงกล่องโต้ตอบเพื่อขอให้ผู้ใช้ยืนยันแทน หากผู้ใช้ยืนยัน ช่องจะเปิดขึ้น การดำเนินการนี้จะเกิดขึ้นทุกครั้ง ไม่ใช่แค่ในการใช้งานครั้งแรก BluetoothAdapter.enable() หรือ WifiManager.setEnabled(true)

หมายเหตุ: สำหรับแอปที่กำหนดเป้าหมายเป็น Android 10 (API ระดับ 29) ขึ้นไปจึงจะเรียกใช้ WifiManager.setEnabled() แอปดังกล่าวต้องเป็นแอประบบหรือ เครื่องมือควบคุมนโยบายด้านอุปกรณ์ (DPC)

โหมดการตรวจสอบสิทธิ์

ในจีน อุปกรณ์ Wear OS สำหรับจีนจะทำงานในโหมดการตรวจสอบสิทธิ์ ซึ่งจะจำกัดวิธีใช้แอปที่มี targetApiLevel ต่ำกว่า 23 โปรดดูขีดจํากัดต่อไปนี้

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

ด้วยเหตุนี้ เราจึงขอแนะนำให้ใช้ targetApiLevel เวอร์ชัน 23 ขึ้นไปและนำแนวทางปฏิบัติแนะนำเกี่ยวกับสิทธิ์ของแอปไปใช้

ใช้ API อื่นๆ ของบริการ Google Play

หากแอปของคุณใช้ Google Play Services API อื่นนอกเหนือจาก Wearable API แอปจะต้องตรวจสอบว่า API เหล่านี้พร้อมใช้งานในระหว่างรันไ��ม์หรือไม่ และตอบสนองอย่างเหมาะสม การตรวจสอบความพร้อมใช้งานของ API บริการ Google Play มี 2 วิธีดังนี้

  1. ใช้อินสแตนซ์ GoogleApiClient แยกต่างหากเพื่อเชื่อมต่อกับ API อื่นๆ อินเทอร์เฟซนี้มีคอลแบ็กเพื่อแจ้งให้แอปทราบถึงการเชื่อมต่อที่สำเร็จหรือไม่สำเร็จ ในกรณีที่เชื่อมต่อไม่สำเร็จ ConnectionResult จะแสดงเป็น API_UNAVAILABLE ดูวิธีจัดการการเชื่อมต่อที่ไม่สําเร็จได้ที่ เข้าถึง Google API
  2. ใช้เมธอด addApiIfAvailable() ของ GoogleApiClient.Builder เพื่อเชื่อมต่อกับ API ที่จำเป็น หลังจากการเรียกกลับ onConnected() เริ่มทํางาน ให้ใช้เมธอด hasConnectedApi() เพื่อให้แน่ใจว่า API แต่ละรายการที่ขอเชื่อมต่ออย่างถูกต้อง

เผยแพร่แอปในจีน

หากต้องการเข้าถึงผู้ใช้ Wear OS สำหรับจีนอย่างมีประสิทธิภาพ คุณสามารถเผยแพร่ผ่าน App Store ของ Wear OS ของบุคคลที่สาม เช่น

  • Galaxy Store สำหรับอุปกรณ์ Samsung
  • Xiaomi Store สำหรับอุปกรณ์ Xiaomi
  • Mobvoi สำหรับอุปกรณ์อื่นๆ ทั้งหมด