• ANDROID_MARS学习笔记_S01原始版_012_广播机制一


    一、简介

    二、代码
    1.xml
    (1)activity_main.xml

     1 <?xml version="1.0" encoding="utf-8"?>
     2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     3     android:orientation="vertical"
     4     android:layout_width="fill_parent"
     5     android:layout_height="fill_parent"
     6     >
     7 <Button
     8     android:id="@+id/sendButton" 
     9     android:layout_width="fill_parent" 
    10     android:layout_height="wrap_content" 
    11     android:text="发送消息给Receiver"
    12     />
    13 </LinearLayout>

    (2)AndroidManifest.xml.xml

    <?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
        package="com.broadcast"
        android:versionCode="1"
        android:versionName="1.0" >
    
        <uses-sdk
            android:minSdkVersion="8"
            android:targetSdkVersion="21" />
    
        <application
            android:allowBackup="true"
            android:icon="@drawable/ic_launcher"
            android:label="@string/app_name"
            android:theme="@style/AppTheme" >
            <activity
                android:name=".MainActivity"
                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=".TestReceiver">
                <intent-filter>
                    <action android:name="android.intent.action.EDIT"/>
                </intent-filter>
            </receiver>
        </application>
        <uses-permission android:name="android.permission.RECEIVE_SMS"/>
    </manifest>

    2.java
    (1)MainActivity.java

     1 package com.broadcast;
     2 
     3 import android.app.Activity;
     4 import android.content.Intent;
     5 import android.os.Bundle;
     6 import android.view.View;
     7 import android.view.View.OnClickListener;
     8 import android.widget.Button;
     9 
    10 public class MainActivity extends Activity {
    11     /** Called when the activity is first created. */
    12     private Button sendButton;
    13     @Override
    14     public void onCreate(Bundle savedInstanceState) {
    15         super.onCreate(savedInstanceState);
    16         setContentView(R.layout.activity_main);
    17         sendButton = (Button)findViewById(R.id.sendButton);
    18         sendButton.setOnClickListener(new BroadcastListener());
    19     }
    20     class BroadcastListener implements OnClickListener{
    21 
    22         @Override
    23         public void onClick(View v) {
    24             Intent intent = new Intent();
    25             intent.setAction(Intent.ACTION_EDIT);//要与在AndroidManifest.xml设置值一致
    26             MainActivity.this.sendBroadcast(intent);
    27         }
    28         
    29     }
    30 }

    (2)TestReceiver.java

     1 package com.broadcast;
     2 
     3 import android.content.BroadcastReceiver;
     4 import android.content.Context;
     5 import android.content.Intent;
     6 
     7 public class TestReceiver extends BroadcastReceiver{
     8 
     9     public TestReceiver(){
    10         System.out.println("TestReceiver");
    11     }
    12     @Override
    13     public void onReceive(Context context, Intent intent) {
    14         System.out.println("onReceive");
    15     }
    16 }
  • 相关阅读:
    从编程到入侵
    编程实现盗2005 Beta2版QQ
    Justin Frankel:Winamp的反斗奇星
    用安静的热情征服联合国
    我和试用期员工之间的故事
    Sogou输入法之父给我们的启示
    《ATL开发指南》的一个值得商榷的地方
    厦门PX项目迁址:意义有限的进步
    探析项目主导型的IT业的人员需求变化及其应对办法
    今天,影响了一位试用期员工的去留
  • 原文地址:https://www.cnblogs.com/shamgod/p/5191436.html
Copyright © 2020-2023  润新知