ก่อนเริ่มกระบวนการเหล่านี้ โปรดตรวจสอบว่าคุณได้เปิดใช้บริการและ Consumer SDK ที่เหมาะสมตามที่อธิบายไว้ในส่วนก่อนหน้านี้
หากต้องการเริ่มต้น Consumer SDK ให้ทำตามขั้นตอนต่อไปนี้
รับอินสแตนซ์ ConsumerApi
หากต้องการใช้ Consumer SDK แอปของคุณต้องเริ่มต้น Singleton
ConsumerApi
แบบไม่พร้อมกัน วิธีการเริ่มต้นจะใช้เมธอด
AuthTokenFactory
เพื่อสร้างโทเค็น JWT ใหม่สำหรับผู้ใช้เมื่อจำเป็น
providerId
คือรหัสโปรเจ็กต์ของโปรเจ็กต์ Google Cloud สำหรับข้อมูลเพิ่มเติม
ข้อมูลเกี่ยวกับการสร้างโปรเจ็กต์ Fleet Engine โปรดดู
สร้างโปรเจ็กต์ Fleet Engine ในคู่มือ Fleet Engine
แอปของคุณควรใช้ AuthTokenFactory
ตามที่อธิบายไว้ใน SDK ของผู้บริโภค
การตรวจสอบสิทธิ์
Java
Task<ConsumerApi> consumerApiTask = ConsumerApi.initialize(
this, "myProviderId", authTokenFactory);
consumerApiTask.addOnSuccessListener(
consumerApi -> this.consumerApi = consumerApi);
Kotlin
val consumerApiTask =
ConsumerApi.initialize(this, "myProviderId", authTokenFactory)
consumerApiTask?.addOnSuccessListener { consumerApi: ConsumerApi ->
this@YourActivity.consumerApi = consumerApi
}
ตัวแสดงผล Maps SDK และ Maps
Consumer SDK เวอร์ชัน 2.0.0 ขึ้นไปรองรับ Maps SDK สำหรับ Android เวอร์ชัน 18.1.0 และ
ในภายหลัง ตารางต่อไปนี้สรุปตัวแสดงผลเริ่มต้นตามเวอร์ชัน Maps SDK
และการรองรับของโหมดแสดงภาพทั้ง 2 ภาพ หากเป็นไปได้ ให้ใช้โหมดแสดงภาพล่าสุด
หากคุณต้องใช้ตัวแสดงผลแบบเดิม ให้ระบุอย่างชัดเจนโดยใช้
MapsInitializer.initialize()
เวอร์ชันของ Maps SDK | รองรับโหมดแสดงภาพล่าสุด | รองรับโหมดแสดงภาพเดิม | ตัวแสดงผลเริ่มต้น |
---|---|---|---|
เวอร์ชัน 18.1.0 และเวอร์ชันที่ต่ำกว่า | ใช่ | ใช่ | เดิม* |
V18.2.0 | ใช่ | ใช่ | ล่าสุด |
* เมื่อมีการเปิดตัว Maps Renderer โฉมใหม่ โหมดแสดงภาพล่าสุดจะเป็น "ค่าเริ่มต้น"
หากต้องใช้โปรแกรมแสดงผลที่ต้องการ ให้เรียกใช้การดำเนินการทั้งหมดในการแสดงผล UIหลังจาก OnMapsSdkInitializedCallback
แสดงผลลัพธ์ การแสดงผล UI
ประกอบด้วยการดำเนินการต่อไปนี้
การขยายมุมมองที่มี
GoogleMapView
หรือConsumerMapView
การวางเครื่องหมายบน
ConsumerMapView
หากคุณไม่ได้เรียกใช้การดำเนินการเหล่านี้หลังจากได้รับ
OnMapsSdkInitializedCallback
รายการซึ่ง Maps SDK จะไม่จัดสรร
โหมดแสดงภาพที่ต้องการและมุมมองแผนที่จะแสดงผลโดยตัวแสดงผลเริ่มต้นแทน
เริ่มต้น Maps SDK ก่อนเริ่มใช้ SDK ของผู้บริโภค
ในชั้นเรียน
Application
หรือActivity
ที่เพิ่งเริ่มต้น โปรดโทร MapsInitializer.initialize()รอผลลัพธ์ของคําขอโปรแกรมแสดงผลก่อนที่จะเริ่มต้นใช้งาน Consumer SDK
ดูตัวอย่างต่อไปนี้สำหรับรายละเอียด
Java
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
initViews();
MapsInitializer.initialize(getApplicationContext(), Renderer.LATEST,
new OnMapsSdkInitializedCallback() {
@Override
public void onMapsSdkInitialized(Renderer renderer) {
switch (renderer) {
case LATEST:
Log.i("maps_renderer", "LATEST renderer");
break;
case LEGACY:
Log.i("maps_renderer", "LEGACY renderer");
break;
}
initializeConsumerSdk();
}
});
}
Kotlin
fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.main)
initViews()
MapsInitializer.initialize(
getApplicationContext(), Renderer.LATEST,
object : OnMapsSdkInitializedCallback() {
fun onMapsSdkInitialized(renderer: Renderer?) {
when (renderer) {
LATEST -> Log.i("maps_renderer", "LATEST renderer")
LEGACY -> Log.i("maps_renderer", "LEGACY renderer")
}
initializeConsumerSdk()
}
})
}
หมายเหตุเกี่ยวกับ SSL/TLS
การใช้ Consumer SDK ภายในองค์กรจะใช้ SSL/TLS เพื่อสื่อสารอย่างปลอดภัย
ด้วยบริการ Fleet Engine Android API เวอร์ชัน 23 หรือต่ำกว่าอาจต้องใช้SecurityProvider
แพตช์เพื่อสื่อสารกับเซิร์ฟเวอร์ หากต้องการดูข้อมูลเพิ่มเติม
เกี่ยวกับการทำงานกับ SSL ใน Android โปรดดู GMS ความปลอดภัย
ผู้ให้บริการ
บทความนี้ยังมีตัวอย่างโค้ดสำหรับการปะแก้ผู้ให้บริการรักษาความปลอดภัยด้วย