من میخوام هر چند 20 ثانیه یک پوشه از نظر محتوی چک بشه و مثلا اگه محتوای پوشه تعداد فایل هاش بین 500 تا 1000 بود محتوی رو حذف کنه
و کدهام به شکل زیر هست
اول میام توی اکتیویتی یه دکمه میزارم و وقتی روی اون دکمه کلیک کردم کد زیر اجرا میشه
StartService(Check)
و سرویس اجرا میشه
توی سرویس استارت این کد قرار داره
StartServiceAt("", DateTime.Now + 20000,True)
و توی همون ساب یعنی سرویس استارت کد زیر برای گرفتن لیست فایل های اون پوشه و حذفشون وجود داره
Dim l As List
l.Initialize
l=File.ListFiles(File.DirRootExternal&"/Mob")
Dim size As Int
For i=0 To l.Size-1
size=size+File.Size(File.DirRootExternal&"/Mob",l.Get(i))
Next
If l.Size > 500 And l.Size < 10000000 Then
Dim l As List
l.Initialize
l=File.ListFiles(File.DirRootExternal&"/Mob")
For i=0 To l.Size-1
File.Delete(File.DirRootExternal&"/Mob",l.Get(i))
Next
End If
خوب این کدهای من مشکلی نداره یعنی اگه من برای اولین بار روی دکمه توی اکتیویتی کلیک کنم و اگه فایل هاش پوشه مثلا 500 تا باشه اونارو لیست و حذف میکنه اما وقتی از برنامه میرم بیرون و وقتی بعد از مثلا 2 روز تعداد فایل های اون پوشه به 500 تا میرسه خودکار پاک نمیشن یعنی سرویس دائم اون پوشه رو چک نمیکنه
سوال
majerajoo 161
سلام
من میخوام هر چند 20 ثانیه یک پوشه از نظر محتوی چک بشه و مثلا اگه محتوای پوشه تعداد فایل هاش بین 500 تا 1000 بود محتوی رو حذف کنه
و کدهام به شکل زیر هست
اول میام توی اکتیویتی یه دکمه میزارم و وقتی روی اون دکمه کلیک کردم کد زیر اجرا میشه
StartService(Check)
و سرویس اجرا میشه
توی سرویس استارت این کد قرار داره
StartServiceAt("", DateTime.Now + 20000,True)
و توی همون ساب یعنی سرویس استارت کد زیر برای گرفتن لیست فایل های اون پوشه و حذفشون وجود داره
Dim l As List l.Initialize l=File.ListFiles(File.DirRootExternal&"/Mob") Dim size As Int For i=0 To l.Size-1 size=size+File.Size(File.DirRootExternal&"/Mob",l.Get(i)) Next If l.Size > 500 And l.Size < 10000000 Then Dim l As List l.Initialize l=File.ListFiles(File.DirRootExternal&"/Mob") For i=0 To l.Size-1 File.Delete(File.DirRootExternal&"/Mob",l.Get(i)) Next End If
خوب این کدهای من مشکلی نداره یعنی اگه من برای اولین بار روی دکمه توی اکتیویتی کلیک کنم و اگه فایل هاش پوشه مثلا 500 تا باشه اونارو لیست و حذف میکنه اما وقتی از برنامه میرم بیرون و وقتی بعد از مثلا 2 روز تعداد فایل های اون پوشه به 500 تا میرسه خودکار پاک نمیشن یعنی سرویس دائم اون پوشه رو چک نمیکنه
ضمنا بالای سرویسمم این کدهارو قرار دادم
#StartAtBoot: False #StartCommandReturnValue: android.app.Service.START_STICKY
لینک ارسال
به اشتراک گذاری در سایت های دیگر
3 پاسخ به این سوال تاکنون داده شده است
ارسالهای توصیه شده
بایگانی شده
این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.