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

فهمیدن زنگ خوردن گوشی


ali mo

سوال

سلام ودرود بر همه دوستان

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

این امکان تا اندروید 6 یا 7 کارمی کنه به راحتی ولی روی 8 و 9 کار نمی کنه و هیچ نتیجه ای نمی ده (از طرفی ام اندروید 9 در دسترسم نیست)

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

دوستان راهی دارید؟

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

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

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

کتابخونه زیر رو دانلود و تیک بزنید

یه سرویس بسازید و اونو پایدار کنید. و به صورت زیر برودکست رو راه اندازی کنید.

Sub Process_Globals
Dim pr As PersianBroadCastReceiver
End Sub

Sub Service_Create
	pr.Initialize("pr")
	pr.AddAction("android.intent.action.PHONE_STATE")
	pr.RegisterReceiver
End Sub

Private Sub pr_OnReceive(intent As Intent)
	Dim state As String=intent.GetExtra("state")
	If state.EqualsIgnoreCase("RINGING") Then
		Log("incoming call START")
	Else If state.EqualsIgnoreCase("IDLE") Then
		Log("incoming call END")
	End If
End Sub

حالا به منیفست برید و دسترسی زیر رو اضافه کنید و حتما به صورت رانتایم هم اونو از کاربر بگیرید.

AddPermission(android.permission.READ_PHONE_STATE)

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

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

در در 9 آذر 1398 در 20:52، محمدرضا شاهپیری گفته است :

کتابخونه زیر رو دانلود و تیک بزنید

یه سرویس بسازید و اونو پایدار کنید. و به صورت زیر برودکست رو راه اندازی کنید.


Sub Process_Globals
Dim pr As PersianBroadCastReceiver
End Sub

Sub Service_Create
	pr.Initialize("pr")
	pr.AddAction("android.intent.action.PHONE_STATE")
	pr.RegisterReceiver
End Sub

Private Sub pr_OnReceive(intent As Intent)
	Dim state As String=intent.GetExtra("state")
	If state.EqualsIgnoreCase("RINGING") Then
		Log("incoming call START")
	Else If state.EqualsIgnoreCase("IDLE") Then
		Log("incoming call END")
	End If
End Sub

حالا به منیفست برید و دسترسی زیر رو اضافه کنید و حتما به صورت رانتایم هم اونو از کاربر بگیرید.


AddPermission(android.permission.READ_PHONE_STATE)

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

اقا واقعا مرسی

حواسم نبود از اینتنت android.intent.action.NEW_OUTGOING_CALL استفاده می کردم بعد فکر می کردم دسترسی read phone ران تایم نداره چون داخل 6 میداد به طور پیش فرض ولی تو 9 نه

ممنون

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

بایگانی شده

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

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

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