Skip to main content

BroadcastReceiver to get Battery Level - simple Example using dynamic calling of BroadCast in ANDROID

See Introduction for Broadcast Receiver here:

 When you need to call a broadcast (suppose here battery value) you need to register the broadcast and when the event is published it will call onReceive method which have context and particular intent as parameter.

 
public class Broadcast extends Activity {
  //Create broadcast object
    BroadcastReceiver mybroadcast = new BroadcastReceiver() {
   
 //When Event is published, onReceive method is called
    @Override
 public void onReceive(Context context, Intent intent) {
     //Get battery percentage
      int batterylevel = intent.getIntExtra("level", 0);     
     //get progressbar
      ProgressBar myprogressbar = (ProgressBar) findViewById(R.id.progressbar);
      myprogressbar.setProgress(batterylevel);
      TextView tv = (TextView) findViewById(R.id.textfield);
    //Set TextView with text
      tv.setText("Battery Level: " + Integer.toString(batterylevel) + "%");
     }
 };
 
    @Override
   public void onCreate(Bundle savedInstanceState) {
     super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_broadcast);    
      registerReceiver(mybroadcast, new IntentFilter(Intent.ACTION_BATTERY_CHANGED));
    } 
} 
The arguments of the registerReceiver() method
receiver :: The BroadcastReceiver you want to register
filter :: The IntentFilter object that specifies which event your receiver should listen to.

To learn more on event and usages click here...

Comments

  1. Nice post Angel.. Thanks for sharing this. Even this http://www.compiletimeerror.com/2013/05/android-battery-percentage-example.html might help.. have a look...

    ReplyDelete
    Replies
    1. ya...that too is nice one ...thanks for your reference Meghna

      Delete
  2. can u plzz give the layout.xml for this.. im just a starter in this

    thanks

    ReplyDelete

Post a Comment

Popular posts from this blog

Spannable String in Android - URL Span ,Clickable Span, Rich-Style Formatting of Textview .....

See more Android Tutorials here....... Faster Loading images in GridViews or ListViews Spannable brings lots of possibility to TextView, includes displaying various appearance of a Text and onClick callbak. The SpannableString class allows you to easily format certain pieces which are called spans of a string, by applying CharacterStyle ie,color, font, ormake it a link . Here is an example where, explained how to use spannable string to give font size, color, linking a text via clickable span and through URL Span and to strike through the text. Lets go through the example : import android.os.Bundle; import android.text.SpannableString; import android.text.method.LinkMovementMethod; import android.text.style.ClickableSpan; import android.text.style.ForegroundColorSpan; import android.text.style.RelativeSizeSpan; import android.text.style.StrikethroughSpan; import android.text.style.URLSpan; import android.view.View; import android.widget.TextView; import android.widget.Toast;

Passing Images between Activities in Android

in First Activity: Intent intent=new Intent(FirstClass.this, SecondClass.class); Bundle bundle=new Bundle(); bundle.putInt("image",R.drawable.ic_launcher); intent.putExtras(bundle); startActivity(intent); in Second Acticity: Bundle bundle=this.getIntent().getExtras(); int pic=bundle.getInt("image"); v.setImageResource(pic); another method: in First Activity: Drawable drawable=imgv.getDrawable(); Bitmap bitmap= ((BitmapDrawable)drawable).getBitmap(); ByteArrayOutputStream baos = new ByteArrayOutputStream(); bitmap.compress(Bitmap.CompressFormat.PNG, 100, baos); byte[] b = baos.toByteArray(); Intent intent=new Intent(Passimage.this,myclass.class); intent.putExtra("picture", b); startActivity(intent); in Second Acticity: Bundle extras = getIntent().getExtras(); byte[] b = extras.getByteArray("picture"); Bitmap bmp = BitmapFactory.decodeByteArray(b, 0, b.lengt

Show and Resume Android Soft-Keyboard

Code to show keyboard: InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE); imm.showSoftInput(yourEditText,InputMethodManager.SHOW_IMPLICIT); Code resume keyboard : InputMethodManager imm = (InputMethodManager)gettSystemService(Context.INPUT_METHOD_SERVICE); imm.hideSoftInputFromWindow(yourEditText.getWindowToken(), 0);