คู่มือนี้จะอธิบายความแตกต่างระหว่าง Google Drive Activity API v1 และ v2 และวิธีเปลี่ยนแอปพลิเคชัน v1 ให้รองรับ v2 API
การให้สิทธิ์
API v1 ใช้ขอบเขตนี้:
https://www.googleapis.com/auth/activity
API v2 ต้องใช้ขอบเขตอย่างใดอย่างหนึ่งต่อไปนี้
https://www.googleapis.com/auth/drive.activity
https://www.googleapis.com/auth/drive.activity.readonly
ชื่อทรัพยากร
ใน API v1 ตัวระบุสำหรับออบเจ็กต์ เช่น รายการใน Google ไดรฟ์และผู้ใช้ เป็นสตริงสีทึบ ใน API v2 โดยทั่วไปจะมีการอ้างอิงออบเจ็กต์เหล่านี้โดยใช้ชื่อทรัพยากร ดูข้อมูลเพิ่มเติมได้ในคู่มือการออกแบบ Cloud API
โดยทั่วไปแล้วตัวระบุเหล่านี้สามารถแปลงได้ เช่น รายการไดรฟ์ใน API v2 มีการอ้างอิงโดยใช้ชื่อทรัพยากร items/ITEM_ID_V1
คำขอ
รูปแบบคำขอของ v2 คล้ายกับของ v1 กล่าวคือ คุณยังคงขอกิจกรรมสําหรับไฟล์ในไดรฟ์หรือไดรฟ์ระดับบนได้ แต่โปรดทราบว่าคุณต้องจัดรูปแบบพารามิเตอร์คําขอเหล่านั้นเป็นชื่อทรัพยากร โดยใช้ items/
นำหน้า
"การจัดกลุ่ม" เปลี่ยนชื่อเป็นการรวม และพารามิเตอร์คำขอ source
และ userId
ถูกนำออกแล้ว
นอกจากนี้ ยังมีตัวเลือกตัวกรองใหม่ที่ช่วยให้คุณจํากัดประเภทข้อมูลกิจกรรมที่แสดงในการตอบกลับได้
การดำเนินการ
ใน API v1 ประเภทกิจกรรมและข้อมูลที่เชื่อมโยงกับกิจกรรมนั้นจะอยู่ในช่องแยกกัน เช่น หากช่อง primaryEventType
มีค่า move
แอปจะสันนิษฐานว่าช่อง move
ระดับบนสุดมีการเติมค่าระดับบนสุดและหลักที่ถูกนำออกไปแล้ว
ช่องเหล่านี้ไม่มีความแตกต่างใน API v2 อีกต่อไป ข้อความ ActionDetail
มีการตั้งค่าช่องเพียงช่องเดียว โดยจะแสดงประเภทการดำเนินการและมีรายละเอียดที่เชื่อมโยงกับการดำเนินการนั้น ตัวอย่างเช่น ActionDetail
ที่แทนการย้ายจะตั้งค่าช่อง move
เท่านั้น และช่องดังกล่าวจะแสดงรายการระดับบนสุดที่เพิ่มเข้าไปและนำออก
ช่อง primaryEventType
API v1 สอดคล้องกับ v2
primaryActionDetail
คร่าวๆ
Actors
ใน API v1 กิจกรรมที่แสดงผลจะมี User
หากผู้ดำเนินการเป็นผู้ใช้ที่รู้จัก และมีช่องระดับบนสุด (ไม่บังคับ) เช่น fromUserDeletion
สำหรับกรณีพิเศษ
ใน API v2 จะมีชุดประเภท Actor
ที่สมบูรณ์ขึ้นและระบบจะป้อนข้อมูล user.knownUser
เมื่อผู้ดำเนินการเป็นผู้ใช้ที่รู้จัก หากแอปพลิเคชันต้องการข้อมูลโดยละเอียดเกี่ยวกับผู้ใช้ ก็จะค้นหาได้จาก People API โดยการส่งช่อง KnownUser
personName
ไปยังเมธอด people.get
เป้าหมาย
ใน API v1 เป้าหมายคือรายการในไดรฟ์เสมอ ใน API v2 เป้าหมายอาจเป็นออบเจ็กต์ประเภทอื่นในไดรฟ์ เช่น การเปลี่ยนแปลงในไดรฟ์มีประเภทเป้าหมายเป็น Drive
ระบบยังคงแสดงผลโฟลเดอร์รูทของไดรฟ์ที่แชร์ (เป็น DriveItem
ในช่อง root
) แต่ไม่ใช่เป้าหมายของกิจกรรมโดยตรง แนวคิดที่คล้ายกันนี้นำไปใช้กับทรัพยากร FileComment
ซึ่งช่อง parent
อ้างอิงถึงรายการในไดรฟ์ที่มีชุดข้อความความคิดเห็นเป้าหมาย
กิจกรรมรวม
ใน API v1 รูปแบบการตอบสนองเปลี่ยนไปเมื่อตั้งค่ากลยุทธ์การรวม ("การจัดกลุ่ม") กล่าวอย่างเจาะจงคือ เมื่อเปิดใช้การรวม แต่ละกิจกรรมจะมี singleEvents
ของประชาชนและ combinedEvent
ที่สรุปกิจกรรมทั่วไปในเหตุการณ์ของผู้คนเหล่านั้น เมื่อปิดใช้การรวม ช่อง combinedEvent
จะมีเหตุการณ์เดิมที่ยังไม่ได้รวมสำหรับแต่ละกิจกรรม เหตุการณ์เหล่านี้อาจแสดงถึงการกระทำมากกว่า 1 อย่าง เช่น การสร้างพร้อมกับการแชร์
ใน API v2 รูปแบบการตอบกลับจะไม่เปลี่ยนแปลงตามกลยุทธ์การรวม เนื่องจาก DriveActivity
ที่ส่งกลับมาจะมีชุดของผู้ดำเนินการ เป้าหมาย และการดำเนินการครบทั้งหมด