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

اجرا شدن نونيفيكيشن در زمان مشخص


hamaz

سوال

باسلام و صبح بخير به همه دوستان

 

ميخوام يك نوتيفيكيشن از برنامه ام در يك ساعت مثلا ساعت 10 صبح هر روز اجرا بشه  تاپيك هاي مرتبط انجمن رو سرچ كردم پيغام خطا ميداد و كار نكرد

از سايت مرجع كدهاي مربوط رو پيدا كردم خودم به شكل زير پياده سازي كردم اما خواسته ام تامين نشد و درست كار نميكنه

 

لطفا اساتيد محترم يه بررسي كنن ببينن مشكل از كجاست 

 

منبع از سايت مرجع 

 

http://www.b4x.com/android/forum/threads/notification-in-certain-time.30477/

 

سرويس:


#Region  Service Attributes 
	#StartAtBoot: True
	#StartCommandReturnValue: android.app.Service.START_STICKY	
#End Region

Sub Process_Globals
	'These global variables will be declared once when the application starts.
	'These variables can be accessed from all modules.
    Dim noti As Notification
End Sub

Sub Service_Create
   
End Sub

Sub Service_Start (StartingIntent As Intent)
	   Dim ten As Long
	   Dim now As Long = DateTime.Now
       ten = DateUtils.SetDateAndTime(DateTime.GetYear(now), DateTime.GetMonth(now), _
	   DateTime.GetDayOfMonth(now),10,0,0)
	   If ten < now Then
		   'skip to tomorrow
		   Dim p1 As Period
		   p1.Days = 1
		   ten = DateUtils.AddPeriod(ten, p1)
	   End If
      Log(DateUtils.TicksToString(ten))
	   StartServiceAt("",ten,True)
	   
	   noti.Initialize
	   noti.Icon = "icon"
	   noti.Light=True
	   noti.Sound = True
	   noti.Vibrate = True
	   noti.SetInfo("حله","تست",Main)
	   noti.Notify(1)
End Sub

Sub Service_Destroy
	
End Sub

#Region  Project Attributes 
#ApplicationLabel: test_noti
#VersionCode: 1
#VersionName: 
'SupportedOrientations possible values: unspecified, landscape or portrait.
#SupportedOrientations: unspecified
#CanInstallToExternalStorage: False
#End Region

#Region  Activity Attributes 
#FullScreen: False
#IncludeTitle: True
#End Region

Sub Process_Globals
'These global variables will be declared once when the application starts.
'These variables can be accessed from all modules.

End Sub

Sub Globals
'These global variables will be redeclared each time the activity is created.
'These variables can only be accessed from this module.

End Sub

Sub Activity_Create(FirstTime As Boolean)
'Do not forget to load the layout file created with the visual designer. For example:
'Activity.LoadLayout("Layout1")
     StartService(Starter)
     Starter.noti.Cancel(1)
End Sub

Sub Activity_Resume

End Sub

Sub Activity_Pause (UserClosed As Boolean)

End Sub


noti_special_time.rar

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

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

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

درود

من حقیقتا نتونستم اون CodeModule رو درک کنم برای کار شما

اگه شما فقط میخواهید مثلا برنامه توی ساعت 6 صبح هر روز Notification بده این چیزا نیازی نداره اصلا

فقط توی سرویس شرط میزارید که اگه مثلا ساعت و دقیقه برابر فلان شد بیا Notification رو بده  :fekr:

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

درود

من حقیقتا نتونستم اون CodeModule رو درک کنم برای کار شما

اگه شما فقط میخواهید مثلا برنامه توی ساعت 6 صبح هر روز Notification بده این چیزا نیازی نداره اصلا

فقط توی سرویس شرط میزارید که اگه مثلا ساعت و دقیقه برابر فلان شد بیا Notification رو بده  :fekr:

سلام مهدي جان ، مواردي كه بالا گفتم و براساس اون لينك سايت مرجع هست يه نگاهي بهش بكني سوالي كه در اين خصوص از ارل كرده بودند.

اون كاري كه شما گفتي رو انجام داد جواب نميده اگر شما زحمتي نيست توي همون فايل پيوست اعمال كن شايد من اشتباه كردم

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

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

	Dim time() As String = Regex.Split(":",DateTime.Time(DateTime.Now))
	Msgbox("Saat:" & time(0) & ", Daqiqe:" & time(1),"Time:")

فقط کافیه مثلا توی سرویس یک تایمر با Interval مثلا 30000 تعریف کنید که هر 30 ثانیه زمان رو بررسی کنه

و توی Timer Tick هم شرطی که میخواهید رو بزارید  :write:

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

بایگانی شده

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

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

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