2012-12-19 24 views
5
Ben (ICS & JB) lokal olarak bir google takvimdeki tüm etkinlikleri silmek için aşağıdaki yöntemi kullanın

sildi bir hata tetikler:çalışır, ancak çok fazla olay

public void deleteAll(){ 
    String selection = "(" + CalendarContract.Events.CALENDAR_ID + " = ?)"; 
    String[] selectionArgs = new String[] { Integer.toString(this.calId) }; 
    ContentResolver cr = context.getContentResolver(); 
    int rows = cr.delete(CalendarContract.Events.CONTENT_URI, selection, selectionArgs); 
    Log.d(TAG, rows + " events deleted"); 
} 

her şey çalışıyor ince ama rahatsız edici bir uyarı olsun: Çok fazla takvim

Delete limit exceeded 

There are 21 deleted items for Calendar, account 
[email protected] What would you like to do?" 

Delete the items. 
Undo the deletes. 
Do nothing for now. 

gösterilecek hata nedeni nedir siler ve herkes bunu önlemek için bir yol biliyor? Ben HTC One-X

Selamlar R

+0

Belirli bir/belirli etkinliği yalnızca takviminizden silmeyi denediniz mi? 1'e 1'i silmek uyarı almadan çalışırsa, olayları yinelemeyi ve 1'e 1'i silmeyi düşünüyorum. –

+0

Olay kimliğine göre 1'e 1'i silmeye çalışmanın da işe yaramadığını onaylayabilirim. Bu mesajı tetikleyen yetkisiz olayları silmeye çalıştığınızda (sınırın ne olduğunu bilmeden), tek seferde 1'e 1 veya tümünü silmeden bağımsız olarak hala devam eder. –

cevap

0

Bu birkaç kez karşılaştık, çok sinir bozucu kullanıyorum ! Bu maalesef bilinen ve devam eden bir sorundur. Üzerinde bir existing bug report var, ancak hala düzeltilmemiş.

Sorunu düzeltmek için yerel takvim önbelleğini temizlemeniz gerekir.

Stok Android:

Settings > Applications > Manage Applications > Calendar Storage > Clear data 

HTC Sense Bunu yapmak için:

, cihazınızda aşağıdakileri yapın

Settings > Apps > All > Calendar Storage > Clear data 

Bunu sorunu yaptığınızda gidecek

+0

Bu harika, ancak uygulamanızın kullanıcılarının bunu yapması beklenmemeli, değil mi? Özellikle bildirim uyarısını görmelerini istemiyorum, çünkü yaptıkları şey gerçekten yapmak istediler. Bu önbellekleri otomatik olarak temizlemenin bir yolu var mı? –

+0

Bildiğim kadarıyla, istemi susturmak için programatik olarak yapılabilecek hiçbir şey yok; Uygulama verilerini programatik olarak temizlerken, Google Takvim’i değil, yalnızca kendi uygulamanızın verilerini temizleyebilirsiniz. Bu bir hatadır. –

+0

Benim için (Android 4.0.4) veri temizlemesi yolu Ayarlar> Cihaz> Depolama> Dahili Depolama> Uygulamalar> Tümü> Takvim Deposu (Takvim DEĞİL)> Depolama> Verileri Temizle. HTH biri. Brewmanz – brewmanz

İlgili konular