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

گرفتن مقدار از نوتیفکشن


alimaha

سوال

با سلام.

بنده برنامه ای پیامکی نوشتم که در صورت دریافت پیام مورد نظر از یک شماره ثبت شده نوتیفکشنی را نمایش می دهد و بر اساس پیام  ، متنی را در نوتیفکشن ارائه می کند.

حال می خواهم مقدار موجود در نوتیفکشن را درون برنامه در یک لیبل نمایش دهم اما نمی دانم چگونه مقدار را از نوتیفکشن بگیرم.

تکه سورس برنامه


Else If a1="1" And a2="00" Then
 	ToastMessageShow("خاموش است",True)
	nsms="خاموش است"
	Notification1.Initialize
	Notification1.Icon = "icon"
	Notification1.Light = False
	Notification1.OnGoingEvent = True
	Notification1.Vibrate = True
	Notification1.SetInfo("اطلاعات","خاموش است",Main)
	Notification1.Notify(1)
	

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

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

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

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

سلام چطور مقدارو فرستادید به notification ?  همونجوری بگیر دیگه :gamer1: ساعت 2 شب سوالتم متوجه نشدم خوب

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

مشکل بنده برای گرفتن مقدار حل شد .

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

اینم سورس سرویس


ub sis_MessageReceived (From As String, Body As String) As Boolean
	
	
	Try
	numbsms=File.ReadString(File.DirInternal,"ccc.txt")
	Catch
		numbsms="000"
		End Try
		
		
		If From=numbsms Then
		 Try
		a=Body
		'vazeiat
		a1=a.SubString2(1,2)
		
		'shomare
		a2=a.SubString2(2,4)
		Catch
			ToastMessageShow("",False)	
			End Try
	

Else If a1="0" And a2<>"00" Then
 	'reportl.Text="ب" & a2 & "بسته است"
	
	ToastMessageShow("ب" & a2 & "بسته است",True)
	nsms="شیر آب" & a2 & "بسته است"
	Notification1.Initialize
	Notification1.Icon = "icon"
	Notification1.Light = False
	Notification1.OnGoingEvent = True
	Notification1.Vibrate = True
	Notification1.SetInfo("اطلاعات","ب" & a2 & "بسته است",Main)
	Notification1.Notify(1)

'/////
	
Intent1.Initialize("", "")
Intent1.SetComponent("chatr.sabz.b/.report1")
'Intent1.PutExtra("key", "value")
Intent1.PutExtra(nsms, nsms)
StartActivity(Intent1)
'//////


Else If a1="2"   Then

اینم سورس دریافت از نوتیفکشن

a5=intent2.GetExtra(smse.nsms)

	reportl.Text=a5

تمامی سورس بدون مشکل است اما به محض دریافت پیام اکتیویتی فعال و وارد برنامه  می شود که نمی خواهم اینطور بشه و باید با کلیک بر روی نوتیفکشن وارد شود

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

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

ببین توی جاوا باید یه PendingIntent تعریف کنی و اینتنت که تعریف کردی رو بهش بدی + چندتا مقدار دیگه

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

توی جاوا به این شکله :

notification.setContentIntent(pendingintent)

 

یکم بگرد ببین همچین امکانی داره یا نه به احتمال زیاد باید داشته باشه

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

ببین تو سایت مرجع گفته این خاصیت رو داره :

notification.setIntent (intent As Intent)

خوب اون اینتنتی که تعریف کردی رو قبل از مقدار دهی به نوتیفیکیشن تعریف کن و در آخر این کد بالارو به نوتیفیکیشن بده ببین عمل میکنه یا نه

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

لطفا اگه می شه به صورت کد برام بنویسید تا بهتر متوجه بشم چون من هر کدی می نویسم جواب نمی ده.ممنون

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

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

این قسمتو اینطوری بذار

Else If a1="0" And a2<>"00" Then
 	'reportl.Text="ب" & a2 & "بسته است"
	
    Intent1.Initialize("", "")
    Intent1.SetComponent("chatr.sabz.b/.report1")
    'Intent1.PutExtra("key", "value")
    Intent1.PutExtra(nsms, nsms)

	ToastMessageShow("ب" & a2 & "بسته است",True)
	nsms="شیر آب" & a2 & "بسته است"
	Notification1.Initialize
	Notification1.Icon = "icon"
	Notification1.Light = False
	Notification1.OnGoingEvent = True
	Notification1.Vibrate = True
	Notification1.setIntent (Intent1);
	Notification1.SetInfo("اطلاعات","ب" & a2 & "بسته است",Main)
	Notification1.Notify(1)




Else If a1="2"   Then
لینک ارسال
به اشتراک گذاری در سایت های دیگر

باورم نمیشه این همه خودتونو به زحمت انداختین:(

ببینید عزیز زمانی که میخواید برای نوتیفیکیشن کلیک بزارید که فلان اکتیویتی رو باز کنه و همراهش یه مقدار هم به اون اکتیویتی بفرسته باید به صورت زیر عمل کنید(فقط جاهاییش که واسه این کار لازمه رو میگم بقیشو خودتون کامل کنید دیگه)

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

    Notification1.SetInfo2("yourtitle","yourbody","yourtag",youractivity)
  

به ترتیب از چپ به راست اولی و دومی که مشخصه مال خود نوتیفیکیشن هست ولی سومی یعنی  yourtag اون مقداری هست که میخواین به اکتیویتی بفرستین آخری هم که مشخصه اکتیویتی هست که میخواین بعد از کلیک رو نوتیفیکیشن اجرا بشه. حالا بریم و مقداری که فرستادیم رو بگیریم. به صورت زیره(دقت کنید دقیقا به صورت زیر باشه و چیزی رو عوض نکنید!!)

dim tag as string
Dim intent As Intent=Activity.GetStartingIntent
If intent.HasExtra("Notification_Tag") Then             
	tag=intent.GetExtra("Notification_Tag")
End If

god with you:girl_pardon:

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

بایگانی شده

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

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

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