ก่อนที่จะเริ่มขั้นตอนเหล่านี้ โปรดตรวจสอบให้แน่ใจว่าคุณได้เปิดใช้งาน และ 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 ทั้งหมด
after 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 ความปลอดภัย
ผู้ให้บริการ
บทความนี้ยังมีตัวอย่างโค้ดสำหรับแพตช์ผู้ให้บริการด้านความปลอดภัยด้วย