رفتن به مطلب
  • 0

چک کردن یک پوشه هر چند دقیقه


majerajoo

سوال

سلام

خسته نباشید

فرض کنید یک پوشه دارم به اسم Mob و توش 3 تا فایل هست

من میخوام وقتی اومدم یکی از فایل های این پوشه رو حذف کردم و شد دو تا برنامه ام بیاد یه نوتیفیکشن بده

من کد بررسی و نوتیفیکشن رو بلدم

اما نمیدونم باید اینارو کجا استفاده کنم که مثلا هر 10 دقیقه حتی وقتی برنامه بسته هستش بیاد اون پوشه رو تو بک گراند چک کنه ببینه فایل هاش چندتا ست اگه هرچی غیراز 2 تا بود که هیچی ولیی اگه من اومدم یه فایل رو حذف کردم و شد 2 تا اون برنامه خودکار زمان بررسی کردنش متوجه بشه و نوتیفیکشن بده

 

کد بررسی و نوتیفیکشنم هم اینه:

	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 = 2 Then
			n.Initialize
  n.AutoCancel = True
  n.Icon = "icon"
  n.Light = True
  n.SetInfo("عنوان","متن",Me)
  n.Sound = True
  n.Vibrate = False
  n.Notify(1)
		End If

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

6 پاسخ به این سوال تاکنون داده شده است

ارسال‌های توصیه شده

در 4 ساعت قبل، مهدی ایزدی گفته است :

StartServiceAt("",DateTime.Now + 0.1*DateTime.TicksPerMinute,False)

 

سلام شرمنده

این کد چقدر زمان میده؟


 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

درود

خب چرا از سرویس استفاده نمیکنید ؟

اولین بار که سرویس اجرا شد بیا تعداد فایل های پوشه رو بگیر و یه جا ذخیره کن

بعدش توی همون سرویس میتونی یک تایمر تعریف کنی و مدام تعداد فایل های پوشه رو بگیری و با مقدار ذخیره شده مقایسه کنی

اگر = نبودن بیا و notification نمایش بده و دوباره مقدار جدید رو ذخیره کن...

اینجوری هر چند بار که فایل ها پاک بشه و کم و زیاد بشن برنامه تشخیص میده و notification رو به کاربر میده !

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 7 ساعت قبل، مهدی ایزدی گفته است :

درود

خب چرا از سرویس استفاده نمیکنید ؟

اولین بار که سرویس اجرا شد بیا تعداد فایل های پوشه رو بگیر و یه جا ذخیره کن

بعدش توی همون سرویس میتونی یک تایمر تعریف کنی و مدام تعداد فایل های پوشه رو بگیری و با مقدار ذخیره شده مقایسه کنی

اگر = نبودن بیا و notification نمایش بده و دوباره مقدار جدید رو ذخیره کن...

اینجوری هر چند بار که فایل ها پاک بشه و کم و زیاد بشن برنامه تشخیص میده و notification رو به کاربر میده !

 

سلام ممنون از جوابتون

خوب من میدونم از سرویس باید استفاده کنم اما کدهاش رو نمیدونم اگه میشه کدهاش رو بدید

لینک ارسال
به اشتراک گذاری در سایت های دیگر

عزیز سرویس که شاخ و دم نداره

دقیقا همین کدهایی که قرار دادید رو توی یک سرویس باید قرار بدید و سرویس رو Start کنید...

آموزش های کار با سرویس توی انجمن هستش... جست و جو کنید تاپیک های زیادی در این باره زده شده

لینک ارسال
به اشتراک گذاری در سایت های دیگر

واسه شما شاخ و دم نداره

به هرحال ممنون یه جوری درستش میکنم

 

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 12 ساعت قبل، majerajoo گفته است :

واسه شما شاخ و دم نداره

به هرحال ممنون یه جوری درستش میکنم

 

 

دوست عزیز ببینید... Activity یک Activity Create داره

سرویس یک Service Create

Activity موقع متوقف شدن Pause داره... ولی سرویس Destory

Activity موقع شروع شدن Resume داره... سرویس Start داره

 

کدهاشون اصلا فرق نداره... دقیقا دهمون کدهایی که توی Activity ازشون استفاده میکنید به همون صورت توی سرویس هم قرار بدید

وقت توی Activity باید سرویس رو هم اجرا کنید یعنی

StartService(ServiceName)

فقط توی سرویس بیایید StartAtBoot که توی خط شماره 2 هست رو مساوی True قرار بدید

خط بعدش هم این رو اضافه کنید :

#StartCommandReturnValue: android.app.Service.START_STICKY

خط بالا برای این هستش که سرویس به صورت پایدار باشه...

توی Service Start هم این رو اضافه کنید :

StartServiceAt("",DateTime.Now + 0.1*DateTime.TicksPerMinute,False)

خلاص... دیگه تمام کدهایی که مربوط به عملکردتون میشه رو توی سرویس پیاده سازی کنید و از کار کردن با سرویس لذت ببرید :girl_flag_of_truce:

موفق باشید

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بایگانی شده

این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...