多次打开/ wifi时服务停止工作

时间:2016-08-20 06:54:57

标签: android performance android-studio

多次打开/关闭Wi-Fi时服务停止工作,当我开始服务时做计数器1,2,3等或任何事情然后打开/关闭Wi-Fi多次服务停止工作,我有BroadcastReceiver上课开始服务,没有例外,出现错误,只有我发一条消息给手机开始服务..

这是BroadcastReceiver中的代码:

if(intent.getAction().equals("android.provider.Telephony.SMS_RECEIVED"))    {
Intent recorderIntent = new Intent(context, Start2.class);
context.startService(recorderIntent);
}

这是我的Start2服务:

public class Start2 extends Service {

private static final String TAG = Start2.class.getSimpleName();
int mStartMode;


@Override
public void onDestroy() {
   Log.d(TAG, "Stop Service onDestroy");
}

 @Nullable
 @Override
 public IBinder onBind(Intent intent) {


return null;
}

@Override
public void onCreate() {

}

@Override
public int onStartCommand(Intent intent, int flags, int startId) {
AsyncTask<Void, Void, String> task = new AsyncTask<Void, Void, String>() {


    @Override
    protected String doInBackground(Void... params) {

        final Handler handler = new Handler(Looper.getMainLooper());
        Runnable runnable = new Runnable() {
            int i = 0 ;
            @Override
            public void run() {
                try{
                    //do your code here
                    Log.d(TAG, "Start Service Repeat Time.. " + i);
                    i++;
                }
                catch (Exception e) {
                    // TODO: handle exception
                }
                finally{
                    //also call the same runnable to call it at regular interval
                    handler.postDelayed( this, 5000 );
                }
            }
        };
        handler.postDelayed(runnable, 1000 );

        return null;
    }
};
task.execute();


return mStartMode;
}
}

0 个答案:

没有答案