Bu kılavuzda, Google Drive Activity API v1 ile v2 arasındaki farklar ve v1 uygulamanızı v2 API'yi destekleyecek şekilde değiştirme hakkında bilgiler verilmektedir.
Yetkilendirme
v1 API şu kapsamı kullanıyordu:
https://www.googleapis.com/auth/activity
v2 API için aşağıdaki kapsamlardan biri gereklidir:
https://www.googleapis.com/auth/drive.activity
https://www.googleapis.com/auth/drive.activity.readonly
Kaynak adları
v1 API'de Google Drive öğeleri ve kullanıcılar gibi nesnelerin tanımlayıcıları opak dizelerdi. v2 API'de bu nesnelere genellikle kaynak adları kullanılarak referans verilir. Daha fazla bilgi için Cloud API Tasarım Kılavuzu'na bakın.
Bu tanımlayıcılar genellikle dönüştürülebilir. Örneğin, v2 API'deki Drive öğelerine items/ITEM_ID_V1
kaynak adı kullanılarak referans verilir.
İstekler
v2 için istek biçimi, v1'e benzer. Daha açık belirtmek gerekirse, Drive dosyası veya Drive üst öğesi için etkinlik isteğinde bulunabilirsiniz. Ancak bu istek parametrelerini items/
ön ekiyle kaynak adı olarak biçimlendirmeniz gerektiğini unutmayın.
"Gruplandırma"nın adı Birleştirme olarak değiştirildi ve source
ile userId
istek parametreleri kaldırıldı.
Ayrıca, yanıtta döndürülen etkinlik verilerinin türlerini kısıtlamanıza olanak tanıyan yeni Filtre seçenekleri de vardır.
İşlemler
v1 API'de etkinlik türü ve bu etkinlikle ilişkili veriler ayrı alanlardaydı. Örneğin, primaryEventType
alanı move
değerini içeriyorsa uygulamalar, üst düzey bir move
alanının eklenen ve kaldırılan üst öğelerle doldurulduğunu varsayar.
v2 API'de bu alanlar artık farklı değildir. ActionDetail
mesajında tam olarak bir alan ayarlanmıştır. İşlem türünü belirtir ve bu işlemle ilişkili ayrıntıları içerir. Örneğin, bir taşıma işlemini temsil eden ActionDetail
yalnızca move
alanını ayarlar ve bu alan, eklenen ve kaldırılan üst öğeleri listeler.
v1 API primaryEventType
alanı, v2 primaryActionDetail
alanına yaklaşık olarak karşılık gelir.
Actors
1. sürüm API'sinde, aktör bilinen bir kullanıcıysa döndürülen etkinlik bir User
içeriyordu ve isteğe bağlı olarak özel durumlar için fromUserDeletion
gibi bir üst düzey alan içeriyordu.
v2 API'de daha zengin bir Actor
türü grubu mevcuttur ve user.knownUser
, aktör bilinen bir kullanıcı olduğunda doldurulur. Uygulamanız kullanıcılarla ilgili ayrıntılı bilgilere ihtiyaç duyuyorsa KnownUser
alanını personName
people.get
yöntemine ileterek People API'den bu bilgileri sorgulayabilir.
Hedefler
v1 API'de hedefler her zaman Drive öğeleriydi. v2 API'de hedefler, Drive'daki diğer nesne türleri olabilir. Örneğin, bir sürücüdeki değişikliklerin hedef türü Drive
'dur. Ortak Drive'ın kök klasörü yine döndürülür (root
alanında DriveItem
olarak), ancak etkinliğin doğrudan hedefi değildir. Benzer bir kavram, parent
alanının hedef yorum mesaj dizisini içeren Drive öğesini andığı FileComment
kaynağı için de geçerlidir.
Birleştirilmiş etkinlik
v1 API'de, bir birleştirme ("gruplandırma") stratejisi ayarlandığında yanıt stili değişiyordu. Daha açık belirtmek gerekirse, birleştirme etkinleştirildiğinde her etkinlik, bileşen singleEvents
'ü ve bu bileşen etkinlikleri arasındaki ortak etkinliği özetleyen bir combinedEvent
içeriyordu. Birleştirme devre dışıyken combinedEvent
alanı, her etkinlik için orijinal birleştirilmemiş etkinliği içeriyordu. Bu etkinliklerden herhangi biri birden fazla işlemi temsil edebilir (ör. paylaşımla birlikte oluşturma).
V2 API'de, döndürülen DriveActivity
her zaman tüm aktör, hedef ve işlem grubunu içerdiğinden yanıt stili, birleştirme stratejisine göre değişmez.