BroadCastReceiver 向Activity传值的问题

我们在有时候在BroadCastReceiver中获取的值,但是activity中要用。

Intent in=new Intent(context,guangbo.class);
in.putExtra("msg",msg);
context.startActivity(in);

用以上方法传值,总是会引起报错。我遇到这个找了好多资料,发现可以通过引入一个Bundle来解决。代码如下:

BroadCastReceiver中发送代码

Intent in=new Intent(context,guangbo.class);
in.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
Bundle msgbundle=new Bundle();
msgbundle.putString("address",address);
msgbundle.putString("body",body);
in.putExtras(msgbundle);
context.startActivity(in);

activity中接收代码

        Bundle bundle = getIntent().getExtras();
        String address = bundle.getString("address");//读出数据
        String body=bundle.getString("body");
        sms=bundle.getString("body");

这样就不会报错了。

参考:http://bbs.itcast.cn/thread-15720-1-1.html

Android Bundle 类

时间: 2024-10-27 22:03:20

BroadCastReceiver 向Activity传值的问题的相关文章

activity传值到fragment

public class MyFragment extends Fragment { //FragmentActivity public static MyFragment staticInstance = null; public static MyFragment getInstance() { if (staticInstance == null){ staticInstance = new MyFragment(); } return staticInstance; } ImageVie

Android中activity传值的两种方式

第一种:第一个Activity  /**      * 通过这个方法跳转到activity2界面*/     public void gotoActivity2(View v){      //创建一个意图      Intent intent=new Intent(this,MainActivity2.class);                //第一种传值方式      Bundle bundle=new Bundle();      bundle.putString("name&quo

Activity传值的几种方式

***Activity的传值 *第一种:Intent传值 主xml文件中设置按钮,点击跳转: <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/btn_name" android:onClick="send"/> //设置点击跳转事件 主Java代码中传值: p

Android 基础一 TextView,Style样式,Activity 传值,选择CheckBox 显示密码

1.修改TextView字体 mTextView = (TextView) findViewById(R.id.textview1); mTextView.setText("I am here"); Resources resources = getBaseContext().getResources(); Drawable myDrawable = resources.getDrawable(R.drawable.Drawable1); mTextView.setBackground

android 从主activity传值到子activity再把结果返回到主界面的示例

在原文档中是:Start Activity and Getting Results The startActivity(android.content.Intent) method is used to start a new activity, which will be placed at the top of the activity stack. It takes a single argument, an Intent, which describes the activity to

【android】activity、fragment传值例子

1:Activity篇 1.1向Activity传值 比如First要给Second传递参数,我们可以这样写,关键点在于putExtra.如果传递类的话,记得类实现Serializable接口 Intent intent = new Intent(FirstActivity.this, SecondActivity.class); intent.putExtra("param1", "data1"); intent.putExtra("param2&quo

Android开发之Activity的创建跳转及传值

在Android系统的江湖中有四大组件:活动(Activity), 服务(Service), 广播接收器(Broadcast Reciver)和内容提供者(Content Provider).今天所介绍的就是Android开发中的四大组件之一:Activity,其他那三大组件以后再进行介绍.说道Android中的Activity,如果你做过iOS开发的话,Activity类似于iOS中的ViewController(视图控制器).在应用中能看到的东西都是放在活动中的.活动是安卓开发比较重要的东西

安卓企业开发(三) activity的四种经典传值方法

开发中遇到多个activity的传值问题 相邻两个之间的传值 或者多个三个以上之间的传值问题 但是很多同学这方面经验还是不足,说下常用的开发场景 1 一般的注册或者添加某项信息界面就会遇activity传值问题 2  比如我在一个界面提交新息  需要打开一个新的界面选择里面的信息回到当前activty的时候 现在说下比较经典的四种比较经典的传值方法 一 如果是两个相邻activity之间的传值: 可以用Intent传值 对象和单个属性都可以都可以 Intent intent =new Inten

Android中点击按钮启动另一个Activity以及Activity之间传值

场景 点击第一个Activity中的按钮,启动第二个Activity,关闭第二个Activity,返回到第一个Activity. 在第一个Activity中给第二个Activity传递值,第二个Activity中获取并显示. 打开第二个Activity Activity传值 注: 博客:https://blog.csdn.net/badao_liumang_qizhi 关注公众号 霸道的程序猿 获取编程相关电子书.教程推送与免费下载. 实现 启动另一个Activity 在第一个Activity中