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

اجرای سرویس بعد از kill procces شدن برنامه


shahan148

سوال

با سلام خدمت دوستان عزیز

 

مشکل من اینه که چه کار کنم اگر برنامم  kill procces شد دوباره سرویس اجرا بشه

 

کد زیر زمانی استفاده میشه که برنامه را کلا بسته نشه یعنی kill procces نشه

StartServiceAt("", DateTime.Now + 10000,True)

 

 

دوستان من یه برنامه از بازار دانلود کردم به اسم  پزشک بنفش - من این برنامه بار ها  بستم  (kill procces ) بعد از چند ثانیه دوباره اجرا میشه دقیقا من  می خوام این کار را برای برنامم پیاده کنم

 

به آدرس زیر هم رفتم جوابی نداشت

 

http://answercenter.ir/topic/2039-%D8%AC%D9%84%D9%88%DA%AF%DB%8C%D8%B1%DB%8C-%D8%A7%D8%B2-%D8%A8%D8%B3%D8%AA%D9%87-%D8%B4%D8%AF%D9%86-%D9%BE%D8%B1%D9%88%D8%B3%D8%B3-%D8%B3%D8%B1%D9%88%DB%8C%D8%B3/

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

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

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

داخل سرویس مورد نظرو قسمت

#Region  Service Attributes 
	#StartAtBoot: False
	#ExcludeFromLibrary: True
#End Region

عبارت #StartAtBoot: False را به #StartAtBoot: True قرار بده

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

نه عزيزم متن كامل بخونيد من چي گفتم

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

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

 

شما اگه تو رویداد Service_Destroy سرویس ، سرویس رو اجرا کنید موقعی که kill شد خودش اجرا میشه.

Sub Service_Destroy
	StartService("")
End Sub

 

سلام پژمان جان

 

من این کارا رو کردم اما بازم نشد چرا نمیدونم

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

 

حال یه برنامه نوشتم با اجرای برنامه تسک منجر برنامه ها را می بندم  این برنامه دیگه بسته میشه سرویس اجرا نمیشه درضمن آیکون برنامه مخفی هست راهی برای اجرا برنامه نیست شما کاربر حرفه ای هستید  چه راهی وجود داره پژمان جان

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

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

چون گوشی من LG هست دوتا مدیریت برنامه داره یکیش یه ویجته که من اگه با این برنامه رو توقف اجباری بکنم به هیچ وجه دیگه اجرا نمیشه ، مثلا میگن تلگرام و واتس اپ سرویسشون بسته نمیشه و هی پیام میاد ، اما من از همین تسک منیجر خودم ، تلگرام رو میبندم هیچوقت هم باز نمیشه ، حتی سرویسی که خودم ساختم هم اجرا نمیشه. گمونم واسه شما هم اینطوریه.

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

 

فعلا هم که راهی بنظرم نمیاد و نمیدونم چرا اینطوریه. :fekr:

 

آره دقیقا اینطور خیلی تلاش کردم نمیدونم چه کار کنم

 

زمانی که بسته بشه دیگه بعد از روشن شدن گوشی استارت آپ نمیشه اینو نمیدونم چه کار کنم راهی بلدی ؟

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

سلام پژمان جان

 

من این کارا رو کردم اما بازم نشد چرا نمیدونم

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

 

حال یه برنامه نوشتم با اجرای برنامه تسک منجر برنامه ها را می بندم  این برنامه دیگه بسته میشه سرویس اجرا نمیشه درضمن آیکون برنامه مخفی هست راهی برای اجرا برنامه نیست شما کاربر حرفه ای هستید  چه راهی وجود داره پژمان جان

شما یکبار بیاید فقط برنامه خودتون رو از داخل تسک منیجر kill کنید ببینید اجرا میشه یانه.

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

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

چون گوشی من LG هست دوتا مدیریت برنامه داره یکیش یه ویجته که من اگه با این برنامه رو توقف اجباری بکنم به هیچ وجه دیگه اجرا نمیشه ، مثلا میگن تلگرام و واتس اپ سرویسشون بسته نمیشه و هی پیام میاد ، اما من از همین تسک منیجر خودم ، تلگرام رو میبندم هیچوقت هم باز نمیشه ، حتی سرویسی که خودم ساختم هم اجرا نمیشه. گمونم واسه شما هم اینطوریه.

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

 

فعلا هم که راهی بنظرم نمیاد و نمیدونم چرا اینطوریه. :fekr:

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

شما اگه تو رویداد Service_Destroy سرویس ، سرویس رو اجرا کنید موقعی که kill شد خودش اجرا میشه.

Sub Service_Destroy
	StartService("")
End Sub
لینک ارسال
به اشتراک گذاری در سایت های دیگر

شما باید سرویس رو استیکی کنید این کد رو داخل سرویس بگذارید .

#StartCommandReturnValue: android.app.Service.START_STICKY
https://www.b4x.com/android/forum/threads/creating-a-sticky-service-long-running-background-tasks.27065/

A sticky service is somewhere between a regular service and a foreground service. Android will kill the process from time to time. However it will recreate it automatically (as soon as possible). For example if you want to track the device location you can use this option. The service (together with the process) will be killed however it will also be recreated again.

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

بایگانی شده

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

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

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