sahar_mrd69
دوشنبه 15 آبان 1396, 11:17 صبح
دوستان سلام و خسته نباشين
من يه کلاس سرويس ميخوام ک يک تايمر درون خودش دارد و هر چهار ساعت يکبار ?? سرور يک درخواست بدهد.
و اینکه با الارم منیجر هم میشود این را نوشت؟
کلاسي که نوشتم به صورت زير است.اما مشکل هايي دارد مطرح ميکنم تا شما عزيزان راهنمايي بفرماييد.
اولين مشکل اينکه زماني که براي اولين بار سرويس اجرا ميشود مشکلي ندارد اما وقتي از اپ خارج ميشوم اين سرويس دوباهر اجرا ميشود
دوم اينکه وقتي اپ را دوباره باز ميکنم اين سرويس مجدد اجرا ميشود
بعد اينکه سرويسم با رياستارت شدن گوشي ديگر اجرا نميشود و بايد دوباره اپ را باز کرد.
من يه سرويسي ميخوام ک فقط يکبار اجرا بشه و به طور دائم هر ده ساعتي يک بار درخواست را به سرور بفرستد.اگر راهنمايي بفرماييد ممنون ميشم
.دوستان من با سرويس هاي اندرويد خيلي مشکل دارم و برام قابل درک نيستن اگر منبعي جامع توي اين زمينه معرفي کنيد ممنون ميشم
public class LocalService extends Service {
private static Timer timer = new Timer();
private Context ctx;
public IBinder onBind(Intent arg0)
{
return null;
}
public void onCreate()
{
super.onCreate();
ctx = this;
startService();
}
private void startService()
{
timer.scheduleAtFixedRate(new mainTask(),0,28800000);
}
private class mainTask extends TimerTask
{
public void run()
{
toastHandler.sendEmptyMessage(0);
}
}
public void onDestroy()
{
super.onDestroy();
Toast.makeText(this, "Service Stopped ...", Toast.LENGTH_SHORT).show();
}
private final Handler toastHandler = new Handler()
{
@Override
public void handleMessage(Message msg)
{
ActionRequestAutoCheck();
// Toast.makeText(getApplicationContext(), "test", Toast.LENGTH_SHORT).show();
}
};
public void ActionRequestAutoCheck(){
}
}
من يه کلاس سرويس ميخوام ک يک تايمر درون خودش دارد و هر چهار ساعت يکبار ?? سرور يک درخواست بدهد.
و اینکه با الارم منیجر هم میشود این را نوشت؟
کلاسي که نوشتم به صورت زير است.اما مشکل هايي دارد مطرح ميکنم تا شما عزيزان راهنمايي بفرماييد.
اولين مشکل اينکه زماني که براي اولين بار سرويس اجرا ميشود مشکلي ندارد اما وقتي از اپ خارج ميشوم اين سرويس دوباهر اجرا ميشود
دوم اينکه وقتي اپ را دوباره باز ميکنم اين سرويس مجدد اجرا ميشود
بعد اينکه سرويسم با رياستارت شدن گوشي ديگر اجرا نميشود و بايد دوباره اپ را باز کرد.
من يه سرويسي ميخوام ک فقط يکبار اجرا بشه و به طور دائم هر ده ساعتي يک بار درخواست را به سرور بفرستد.اگر راهنمايي بفرماييد ممنون ميشم
.دوستان من با سرويس هاي اندرويد خيلي مشکل دارم و برام قابل درک نيستن اگر منبعي جامع توي اين زمينه معرفي کنيد ممنون ميشم
public class LocalService extends Service {
private static Timer timer = new Timer();
private Context ctx;
public IBinder onBind(Intent arg0)
{
return null;
}
public void onCreate()
{
super.onCreate();
ctx = this;
startService();
}
private void startService()
{
timer.scheduleAtFixedRate(new mainTask(),0,28800000);
}
private class mainTask extends TimerTask
{
public void run()
{
toastHandler.sendEmptyMessage(0);
}
}
public void onDestroy()
{
super.onDestroy();
Toast.makeText(this, "Service Stopped ...", Toast.LENGTH_SHORT).show();
}
private final Handler toastHandler = new Handler()
{
@Override
public void handleMessage(Message msg)
{
ActionRequestAutoCheck();
// Toast.makeText(getApplicationContext(), "test", Toast.LENGTH_SHORT).show();
}
};
public void ActionRequestAutoCheck(){
}
}