انجمن سایت کلیدستان



عدم اجرای سرویس در هنگام باز نبودن اپلیکیشن (در اندروید)زمان کنونی: ۱۳۹۵/۰۹/۱۷، ۰۴:۵۵ ب.ظ
کاربران در حال بازدید این موضوع: 1 مهمان
نویسنده: parniaznet
آخرین ارسال: admin
پاسخ 2
بازدید 958

رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
عدم اجرای سرویس در هنگام باز نبودن اپلیکیشن (در اندروید)

عدم اجرای سرویس در هنگام باز نبودن اپلیکیشن (در اندروید)

#1
سلام
وقت بخیر
من می خوام وقتی اپلیکیشن باز نیست یه کاری رو رو گوشی بتونم انجام بدم
برای این کار از سرویس استفاده می کنم

و در اولین اکتیویتی اپلیکیشنم فراخونیش می کنم :

کد پی‌اچ‌پی:
startService(new Intent(thisMyService.class)); 

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

مگه سرویس ها برای این نیستند که بدون باز بودن اپلیکیشن و در بک گراند کار انجام بدن؟!

کد های سرویس من :

کد پی‌اچ‌پی:
public class MyService extends Service{
    private static 
String TAG "Inchoo.net tutorial";
    
int mNotificationId 001;
    
Notification n;
    
NotificationManager nm;
     
 
    @
Override
    
public IBinder onBind(Intent arg0) {
        
// TODO Auto-generated method stub
         
         
         
         
        
return null;
    }
  
    @
Override
    
public void onStart(Intent intentint startId) {
        
// TODO Auto-generated method stub
        
super.onStart(intentstartId);
        
Log.d(TAG"FirstService started");
         
        final 
Handler handler = new Handler();
        
handler.postDelayed(new Runnable() {
            public 
void run() {
                
readWebpage();
                
handler.postDelayed(this15000); //now is every 2 minutes
            
}
         }, 
15000); //Every 120000 ms (2 minutes)
         
         
         
        
this.stopSelf();
    }
 
/*
    @Override
    public void onDestroy() {
        // TODO Auto-generated method stub
        super.onDestroy();
        Log.d(TAG, "FirstService destroyed");
    }*/
     
     
     
    
private void readWebpage() {
        
String appName "com.fallrooz.srp";
        
Intent intent = new Intent(Intent.ACTION_VIEWUri.parse("http://play.google.com/store/apps/details?id=" appName));
        
PendingIntent pIntent PendingIntent.getActivity(this0intent0);
 
        
// build notification
        // the addAction re-use the same intent to keep the example short
        
Notification n  = new Notification.Builder(this)
                .
setContentTitle("تست نوتیفیکیشن")
                .
setContentText("تست تست تست")
                .
setSmallIcon(R.drawable.icon)
                .
setContentIntent(pIntent)
                .
setAutoCancel(true)
                .
setSound(RingtoneManager.getDefaultUri(RingtoneMa  nager.TYPE_NOTIFICATION))
                .
addAction(R.drawable.icon"Call"pIntent)
                .
addAction(R.drawable.icon"More"pIntent)
                .
addAction(R.drawable.icon"And more"pIntent).build();
 
 
        
NotificationManager notificationManager 
          (
NotificationManagergetSystemService(NOTIFICATION_SERVICE);
 
        
notificationManager.notify(0n); 
         
        
//Toast.makeText(this, "shod", Toast.LENGTH_SHORT).show();
 
    
}

پاسخ

عدم اجرای سرویس در هنگام باز نبودن اپلیکیشن (در اندروید)

#2
سلام.
این موردی که تذکر می دهم را اجرا کنید، ببینید درست میشه یا نه :
شما کدهای اجرایی Service را در روش onStart نوشته اید، اما این بار آنها را در روش onStartCommand و مطابق ساختار شرح داده شده در کلید زیر بنویسید :

کلید شماره 2609

bookbook 
لطفا برای درج کد، از دکمه مخصوص درج کد در ادیتور انجمن استفاده کنید.
در مورد برنامه نویسی، مدیران تنها راهنمایی می کنند و نوشتن برنامه نهایی، به عهده کاربران می باشد (اینجا محلی برای یادگیری است، نه سفارش کدنویسی).
کاربران باید ابتدا خود به خطایابی برنامه بپردازند، نه اینکه به محض دیدن خطا، کدها را در انجمن، copy و paste کرده و از مدیران انتظار بررسی داشته باشند.
پاسخ
 سپاس شده توسط parniaznet


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان

آخرین کلیدهای غیررایگان

شما هم می توانید کلیدهای غیررایگان منتشر کنید (بیشتر بدانید)