اگر SDK برنامتون از 33 به بالاتر باشه برای نمایش نوتیفیکیشن باید ران تایم پرمیشن(RuntimePermissions) بدید
که میشه مثل کد زیر
'Make sure that targetSdkVersion >= 33
Private Sub CheckAndRequestNotificationPermission As ResumableSub
Dim p As Phone
If p.SdkVersion < 33 Then Return True
Dim ctxt As JavaObject
ctxt.InitializeContext
Dim targetSdkVersion As Int = ctxt.RunMethodJO("getApplicationInfo", Null).GetField("targetSdkVersion")
If targetSdkVersion < 33 Then Return True
Dim NotificationsManager As JavaObject = ctxt.RunMethod("getSystemService", Array("notification"))
Dim NotificationsEnabled As Boolean = NotificationsManager.RunMethod("areNotificationsEnabled", Null)
If NotificationsEnabled Then Return True
Dim rp As RuntimePermissions
rp.CheckAndRequest(rp.PERMISSION_POST_NOTIFICATIONS)
Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean) 'change to Activity_PermissionResult if non-B4XPages.
Log(Permission & ": " & Result)
Return Result
End Sub
که ارل گفته اگر پروژتون B4A هست اون بخش
Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean) 'change to Activity_PermissionResult if non-B4XPages.
رو به شکل پائینی عوض کنید
Wait For Activity_PermissionResult (Permission As String, Result As Boolean) 'change to Activity_PermissionResult if non-B4XPages.
و برای فراخونیش از کد زیر استفاده کنید
Wait For (CheckAndRequestNotificationPermission) Complete (HasPermission As Boolean)
If HasPermission Then
Dim n As Notification
n.Initialize
n.Icon = "icon"
n.SetInfo("This is the title", "and this is the body.", Splash) 'Change Main to "" if this code is in the main module.
n.Notify(1)
Else
Log("no permission")
ToastMessageShow("no permission", True)
End If
ولی بعضی مواقع این کافی نیست و ممکنه درست جواب نده اگر جواب نداد میتونید از بخش منیفست(Manifest) دستی اضاف کنید اون موقع این مشکل حل میشه دکمه اجازه نوتیفیکیشن میاد بالا
AddPermission(android.permission.POST_NOTIFICATIONS)
نوتیفیکیشن گوشی چیست؟
فرض میکنیم شما از یک برنامه یا اپلیکیشن برای سفارش یک بسته استفاده کرده و سفارش خود را تکمیل کردهاید پس از آن از برنامه خارج شدهاید. در آن سو شرکتی که شما روی پلتفرم آن سفارش ثبت کردهاید، بسته را آماده کرده و برای شما ارسال میکند. در این زمان است که آن شرکت میخواهد به شما اطلاع رسانی کند که بسته شما آماده ارسال است اما شما برنامه را بستهاید و در این مرحله نوتیفیکیشن (NOTIFICATION) به کمک شما میآید. پوش نوتیفیکیشن به شما در قسمت اعلانها یا همان نوتیفیکیشن پیامی نشان میدهد که شما را از تغییر حالت سفارش شما از حالت آمادهسازی به آماده ارسال مطلع سازد.
به زبان ساده نوتیفیکیشن گوشی اعلان یا پیامی است که در یک زمان مشخص توسط مدیر یک سایت یا اپلیکیشن برای شما ارسال میشود تا طی این پیام به شما اطلاعات خاصی داده شود. لازم به ذکر است که این اطلاعات مبتنی بر چند چیز از طرف یک اپلیکیشن یا سایت برای شما ارسال میشود پس برای دریافت نوتیفیکیشن اینترنت گوشی شما باید روشن باشد. البته در قسمت نوتیفیکیشن تماسهای از دست رفته و پیامهایی که هنوز خوانده نشده هم به نمایش در میآید که نیازی به اینترنت برای آنها نیست
معنی notification در گوشی و به زبان فارسی اعلان است و منظور از این اعلان در اپلیکیشنها و تکنولوژی وب همان اعلانهایی است که به صورت یک پیام کوتاه یا تصویر در قسمت نوتیفیکیشن گوشی به شما میرسد.
نوتیفیکیشنها با کاراییهای مختلف از جمله اطلاع رسانی یا تبلیغ و … برای شما ارسال میشوند. به طور مثال اگر شخصی درخواست دوستی در اپلیکیشن اینستاگرام برای شما ارسال کند، این درخواست برای شما ابتدا به صورت نوتیفیکیشن در قسمت اعلانها به نمایش در میآید.
اگر SDK برنامتون از 33 به بالاتر باشه برای نمایش نوتیفیکیشن باید ران تایم پرمیشن(RuntimePermissions) بدید
که میشه مثل کد زیر
'Make sure that targetSdkVersion >= 33
Private Sub CheckAndRequestNotificationPermission As ResumableSub
Dim p As Phone
If p.SdkVersion < 33 Then Return True
Dim ctxt As JavaObject
ctxt.InitializeContext
Dim targetSdkVersion As Int = ctxt.RunMethodJO("getApplicationInfo", Null).GetField("targetSdkVersion")
If targetSdkVersion < 33 Then Return True
Dim NotificationsManager As JavaObject = ctxt.RunMethod("getSystemService", Array("notification"))
Dim NotificationsEnabled As Boolean = NotificationsManager.RunMethod("areNotificationsEnabled", Null)
If NotificationsEnabled Then Return True
Dim rp As RuntimePermissions
rp.CheckAndRequest(rp.PERMISSION_POST_NOTIFICATIONS)
Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean) 'change to Activity_PermissionResult if non-B4XPages.
Log(Permission & ": " & Result)
Return Result
End Sub
که ارل گفته اگر پروژتون B4A هست اون بخش
Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean) 'change to Activity_PermissionResult if non-B4XPages.
رو به شکل پائینی عوض کنید
Wait For Activity_PermissionResult (Permission As String, Result As Boolean) 'change to Activity_PermissionResult if non-B4XPages.
و برای فراخونیش از کد زیر استفاده کنید
Wait For (CheckAndRequestNotificationPermission) Complete (HasPermission As Boolean)
If HasPermission Then
Dim n As Notification
n.Initialize
n.Icon = "icon"
n.SetInfo("This is the title", "and this is the body.", Splash) 'Change Main to "" if this code is in the main module.
n.Notify(1)
Else
Log("no permission")
ToastMessageShow("no permission", True)
End If
ولی بعضی مواقع این کافی نیست و ممکنه درست جواب نده اگر جواب نداد میتونید از بخش منیفست(Manifest) دستی اضاف کنید اون موقع این مشکل حل میشه دکمه اجازه نوتیفیکیشن میاد بالا
AddPermission(android.permission.POST_NOTIFICATIONS)
نوتیفیکیشن گوشی چیست؟
فرض میکنیم شما از یک برنامه یا اپلیکیشن برای سفارش یک بسته استفاده کرده و سفارش خود را تکمیل کردهاید پس از آن از برنامه خارج شدهاید. در آن سو شرکتی که شما روی پلتفرم آن سفارش ثبت کردهاید، بسته را آماده کرده و برای شما ارسال میکند. در این زمان است که آن شرکت میخواهد به شما اطلاع رسانی کند که بسته شما آماده ارسال است اما شما برنامه را بستهاید و در این مرحله نوتیفیکیشن (NOTIFICATION) به کمک شما میآید. پوش نوتیفیکیشن به شما در قسمت اعلانها یا همان نوتیفیکیشن پیامی نشان میدهد که شما را از تغییر حالت سفارش شما از حالت آمادهسازی به آماده ارسال مطلع سازد.
به زبان ساده نوتیفیکیشن گوشی اعلان یا پیامی است که در یک زمان مشخص توسط مدیر یک سایت یا اپلیکیشن برای شما ارسال میشود تا طی این پیام به شما اطلاعات خاصی داده شود. لازم به ذکر است که این اطلاعات مبتنی بر چند چیز از طرف یک اپلیکیشن یا سایت برای شما ارسال میشود پس برای دریافت نوتیفیکیشن اینترنت گوشی شما باید روشن باشد. البته در قسمت نوتیفیکیشن تماسهای از دست رفته و پیامهایی که هنوز خوانده نشده هم به نمایش در میآید که نیازی به اینترنت برای آنها نیست
معنی notification در گوشی و به زبان فارسی اعلان است و منظور از این اعلان در اپلیکیشنها و تکنولوژی وب همان اعلانهایی است که به صورت یک پیام کوتاه یا تصویر در قسمت نوتیفیکیشن گوشی به شما میرسد.
نوتیفیکیشنها با کاراییهای مختلف از جمله اطلاع رسانی یا تبلیغ و … برای شما ارسال میشوند. به طور مثال اگر شخصی درخواست دوستی در اپلیکیشن اینستاگرام برای شما ارسال کند، این درخواست برای شما ابتدا به صورت نوتیفیکیشن در قسمت اعلانها به نمایش در میآید.
دیدگاه ها 0
درباره این مطلب دیدگاهی ارسال کنید