欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Android使用BroadcastReceiver实现手机开机之后显示画面的功能

程序员文章站 2024-02-21 18:42:52
本文实例讲述了android使用broadcastreceiver实现手机开机之后显示画面的功能。分享给大家供大家参考,具体如下: 在此例中介绍了怎样使用broadcas...

本文实例讲述了android使用broadcastreceiver实现手机开机之后显示画面的功能。分享给大家供大家参考,具体如下:

在此例中介绍了怎样使用broadcastrececiver。使用broadcastreceiver需要继承这个类,并且重写public void onreceiver(context context,intent intent)这个方法,在这个方法中来添加想要实现的功能。

下面这个例子是实现android手机开机之后,所自动显示的画面,通过imageview来引入一张图片,通过textview来显示一句问候语。在每次手机开机之后都会自动显示出来。 

具体程序如下所示:

import android.app.activity;
import android.os.bundle;
import android.widget.imageview;
import android.widget.textview;
public class a01activity extends activity {
 private textview tv;
 private imageview iv;
  /** called when the activity is first created. */
  @override
  public void oncreate(bundle savedinstancestate) {
    super.oncreate(savedinstancestate);
    setcontentview(r.layout.main);
    tv=(textview)findviewbyid(r.id.tv);
    tv.settext("欢迎光临168855");
    iv=(imageview)findviewbyid(r.id.iv);
    iv.setbackgroundresource(r.drawable.a);    
  }
}

然后再在同一个package中写一个类来继承broadcastreceiver,并重写public void onreceiver(context context, intent intent)这个方法,程序如下:

import android.content.broadcastreceiver;
import android.content.context;
import android.content.intent;
public class a01_01 extends broadcastreceiver{
 @override
 public void onreceive(context arg0, intent arg1) {
 // todo auto-generated method stub
 intent i=new intent(arg0,a01activity.class);
 i.setflags(intent.flag_activity_new_task);
 arg0.startactivity(i);
 }
}

为了捕捉系统开机所广播的开机action信息,必须在androidmanifest.xml里的<application>当中设置<receiver>标记,并将其中的intent-filter名称指定为android.intent.action.boot_completed。其中androidmanifest.xml如下所示:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
  package="com.my.a01"
  android:versioncode="1"
  android:versionname="1.0" >
  <uses-sdk android:minsdkversion="10" />
  <application
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name" >
    <activity
      android:name=".a01activity"
      android:label="@string/app_name" >
      <intent-filter>
        <action android:name="android.intent.action.main" />
        <category android:name="android.intent.category.launcher" />
      </intent-filter>
    </activity>
    <receiver android:name="a01_01">
      <intent-filter>
        <action android:name="android.intent.action.boot_completed"></action>
        <category android:name="android.intent.category.home"></category>
      </intent-filter>
    </receiver>
  </application>
</manifest>

更多关于android相关内容感兴趣的读者可查看本站专题:《android布局layout技巧总结》、《android视图view技巧总结》及《android开发入门与进阶教程

希望本文所述对大家android程序设计有所帮助。