Android 消息广播Intent传递数据
1.创建布局文件activity_broadcast.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".BroadcastActivity" > <Button
android:id="@+id/sendBroadcastIntent"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Broadcast Intent"
/>
</RelativeLayout>
2.创建Activity
public class BroadcastActivity extends Activity {
    //设定为com.china.ui.NEW_LIFEFORM,显示内容前,多一条信息"收到广播信息";
    //public static final String MY_NEW_LIFEFORM="com.china.ui.NEW_LIFEFORM";
    public static final String MY_NEW_LIFEFORM="NEW_LIFEFORM";
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_broadcast);
        //传递数据
        final Intent intent=new Intent(MY_NEW_LIFEFORM);
        intent.putExtra("msgContent", "测试内容");
        //初始化按钮
        Button button=(Button) findViewById(R.id.sendBroadcastIntent);
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View arg0) {
                sendBroadcast(intent);
            }
        });
    }
}
3.创建BroadcastReceiver
public class Receiver extends BroadcastReceiver {
    @Override
    public void onReceive(Context context, Intent intent) {
        String content=intent.getStringExtra("msgContent");
        CharSequence string="收到信息:"+content;
        Toast.makeText(context, string, Toast.LENGTH_LONG).show();
    }
}
4.配置AndroidManifest.xml
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.dh.broadcast"
android:versionCode=""
android:versionName="1.0" >
<uses-sdk android:minSdkVersion="" android:targetSdkVersion="" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.dh.broadcast.BroadcastActivity"
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="com.dh.broadcast.Receiver" android:enabled="true">
<intent-filter >
<!-- <action android:name="com.china.ui.NEW_LIFEFORM"/> -->
<action android:name="NEW_LIFEFORM"/>
</intent-filter>
</receiver>
</application>
</manifest>
Android 消息广播Intent传递数据的更多相关文章
- Android学习之Intent传递数据
		Intent在Activity中的作用主要是有两个: 1.启动目标Activity 2.传递数据 Intent在传递数据时分两种情况:向下一个Activity传递数据和从下一个Activity返回数据 ... 
- [Android] Android 最全 Intent 传递数据姿势
		我们都是用过 Intent,用它来在组件之间传递数据,所以说 Intent 是组件之间通信的使者,一般情况下,我们传递的都是一些比较简单的数据,并且都是基本的数据类型,写法也比较简单,今天我在这里说的 ... 
- 【转】Android 之最新最全的Intent传递数据方法
		原文地址:https://www.jianshu.com/p/1169dba99261 intent传递数据 为什么要和intent单独拿出来讲,因为Intent传递数据也是非常重要的 一.简单的传递 ... 
- Android Intent传递数据
		刚开始看郭大神的<>,实现以下里面的一些例子.Intent传递数据. 我们利用显示的方式进行Intent的启动. 1.启动intent并输入数据. Intent intent=new In ... 
- Android Activity传递数据使用getIntent()接收不到,揭秘Intent传递数据与Activity启动模式singleTask的关系。
		activity通过intent传递数据的时候,如果activity未启动,那么在这个刚启动的activity里通过getIntent()会获取到这个intent的数据.. 如果要启动的activit ... 
- Xamarin Android 中Acitvity如何传递数据
		在xamarin android的开发中,activity传递数据非常常见,下面我也来记一下在android中activity之间传递数据的几种方式, Xamarin Android中Activity ... 
- Android 开发中使用Intent传递数据的方法
		Activity之间通过Intent传递值,支持基本数据类型和String对象及 它们的数组对象byte.byte[].char.char[].boolean.boolean[].short.shor ... 
- Android开发经验之—intent传递大数据
		在Activity或者组件之前传递信息时,一般採用intent绑定bundle的方式传值,但在使用过程中须要注意的是不要用bundle传递大容量数据: 在做项目的过程中,须要将听写界面的听写结果信息传 ... 
- Android Intent 传递数据注意事项
		不要通过 Intent 在 Android 基础组件之间传递大数据(binder transaction缓存为 1MB),可能导致 OOM. 
随机推荐
- EF之外键Include() left join
			项目中用EF实现外键查询出的数据, 查询数量正确, 但实现返回数据集数量不对 //DbContext.cs HasRequired(s => s.ClassRoom) .WithMany() . ... 
- Zclip复制页面内容到剪贴板兼容各浏览器
			Zclip:复制页面内容到剪贴板兼容各浏览器 WEB开发中,要让用户复制页面中的一段代码.URL地址等信息,为了避免用户拖动鼠标再进行右键复制操作而可能出现的差错,我们可以直接在页面中放置一个复制按钮 ... 
- mysql几个命令
			1.格式化输出 select * from mysql.user\G 2.显示版本 show version() 3.显示引擎 show engines mysql> show engines; ... 
- R语言绘图002-页面布局
			par().layout().split.screen()函数 1. par()函数的参数详解 函数par()可以用来设置或者获取图形参数,par()本身(括号中不写任何参数)返回当前的图形参数设置( ... 
- 【Valid Parentheses】cpp
			题目: Given a string containing just the characters '(', ')', '{', '}', '[' and ']', determine if the ... 
- throttle/debounce: 为你的cpu减减压(前端性能优化)
			何为throttle, 何为debounce? 谷歌翻译给出的意思:throttle 掐死??? debounce 去抖 好吧,按理解我们习惯翻译成 ——节流. 那么在什么场景下需要用到? 场景一 ... 
- WPF  策略模式
			using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.W ... 
- Android Environment FAQ (Frequently Asked Question)
			1.how to find out the Eclipse Version From Eclipse Menu Help ----> About Eclipse It displayed as ... 
- Sqli-labs less 64
			Less-64 此处的sql语句为 $sql="SELECT * FROM security.users WHERE id=(($id)) LIMIT 0,1"; 示例payloa ... 
- Google Chrome 浏览器禁用缓存
			在使用 Google Chrome 浏览器调试 js 时,会发现修改完 js 不会立即生效,这是由于 chrome 浏览器缓存的原因,而在火狐下没有这个问题.经常使用 chrome 浏览器调试 js ... 
