Android Open Source - android-training-tutorial Custom Broadcast Service






From Project

Back to project page android-training-tutorial.

License

The source code is released under:

MIT License

If you think the Android project android-training-tutorial listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package im.ene.dev.zbroadcastreceiver2.services;
//from w  ww. j a va 2  s  .  c om
import im.ene.dev.zbroadcastreceiver2.MainActivity;
import im.ene.dev.zbroadcastreceiver2.receivers.CustomBroadcastReceiver;
import im.ene.dev.zbroadcastreceiver2.receivers.CustomBroadcastReceiver.OnBroadcastReceiveListener;
import android.app.Service;
import android.content.Intent;
import android.content.IntentFilter;
import android.os.Handler;
import android.os.IBinder;

public class CustomBroadcastService extends Service implements OnBroadcastReceiveListener {
  
  public static final String BROADCAST_SERVICE_ACTION = "im.ene.br2.broadcast_from_service";
  
  public static final String TAG = "im.ene.br2.service";
  
  public static int MAX = 10000;
  
  private Intent mBroadcastIntent;
  
  private CustomBroadcastReceiver mReceiver;
  
  private Handler mHandler;

  private int counter;
  
  @Override
  public IBinder onBind(Intent intent) {
    return null;
  }

  @Override
  public void onCreate() {
    mBroadcastIntent = new Intent(CustomBroadcastService.BROADCAST_SERVICE_ACTION);
    
    mReceiver = new CustomBroadcastReceiver();
    mReceiver.setOnBroadcastReceiveListener(this);
    registerReceiver(mReceiver, new IntentFilter(MainActivity.BROADCAST_ACTIVITY_ACTION));
    
    mHandler = new Handler();
    counter = 0;
    
    super.onCreate();
  }
  
  public Runnable mSendBroadcastRunnable = new Runnable() {

    @Override
    public void run() {
      sendBroadcastToUpdateUI();
      mHandler.postDelayed(this, 100);
    }
  };
  
  public void sendBroadcastToUpdateUI() {
    counter += 10;
    if (counter >= MAX)
      counter = 0;
    mBroadcastIntent.putExtra("progress", counter);
    sendBroadcast(mBroadcastIntent);
  }
  
  @Override
  public int onStartCommand(Intent intent, int flags, int startId) {
    mHandler.postDelayed(mSendBroadcastRunnable, 100);
    return super.onStartCommand(intent, flags, startId);
  }

  @Override
  public void onBroadcastReceiveUpdateUI(Intent intent) {
    counter = intent.getIntExtra("progress", 1);
  }
  
  @Override
  public void onDestroy() {
    // TODO Auto-generated method stub
    super.onDestroy();
    
    /* stop/pause receiving broadcast from activity */
    try {
      unregisterReceiver(mReceiver);
    } catch (Exception er) {
      er.printStackTrace();
    }
  }
}




Java Source Code List

com.flavienlaurent.vdh.DragActivity.java
com.flavienlaurent.vdh.DragLayout.java
com.flavienlaurent.vdh.HorizontalDragLayout.java
com.flavienlaurent.vdh.MainActivity.java
com.flavienlaurent.vdh.YoutubeActivity.java
com.flavienlaurent.vdh.YoutubeLayout.java
com.flavienlaurent.vdh.listener.SwipeDismissTouchListener.java
com.hb.views.PinnedSectionListView.java
fi.harism.curl.CurlActivity.java
fi.harism.curl.CurlMesh.java
fi.harism.curl.CurlPage.java
fi.harism.curl.CurlRenderer.java
fi.harism.curl.CurlView.java
im.ene.dev.zbroadcastreceiver2.MainActivity.java
im.ene.dev.zbroadcastreceiver2.receivers.CustomBroadcastReceiver.java
im.ene.dev.zbroadcastreceiver2.services.CustomBroadcastService.java
im.ene.dev.zbroadcastreceiver.MainActivity.java
im.ene.dev.zbroadcastreceiver.SecondActivity.java
im.ene.dev.zbroadcastreceiver.receivers.CustomBroadcastReceiver.java
im.ene.dev.zbroadcastreceiver.services.CustomBroadcastService.java
im.ene.dev.zserviceibinder.MainActivity.java
im.ene.dev.zserviceibinder.services.CustomService.java
im.ene.pinnedheaderlistviewsample.MainActivity.java
im.ene.samplevideoplayer.MainActivity.java
im.ene.samplevideoplayer.constant.Constant.java
im.ene.samplevideoplayer.views.CustomSurfaceView.java
im.ene.samplevideoplayer.views.VideoControllerView.java
im.ene.zaidlservicesample.MainActivity.java
im.ene.zaidlservicesample.Second.java
im.ene.zanimationsample.MainActivity.java
im.ene.zcustomvideoview.MainActivity.java
im.ene.zcustomvideoview.views.CustomVideoView.java
im.ene.zcustomvideoview.views.VideoControllerView.java
im.ene.zintenttutorial.MainActivity.java
im.ene.zintenttutorial.broadcastreceiver.CustomBroadcastReceiver.java
im.ene.zintenttutorial.services.CustomService.java
im.ene.zviewpager.MainActivity.java