Android 将参数从活动传递给BroadcastReceiver

Android 将参数从活动传递给BroadcastReceiver,android,parameters,android-activity,parameter-passing,broadcastreceiver,Android,Parameters,Android Activity,Parameter Passing,Broadcastreceiver,嘿,我一直在尝试将一个字符串数组从我的活动传递到广播接收器,但它在广播接收时总是给我空值。我用了2-3种方法进行了尝试 // Code in Receiver String stringText= intent.getExtras().getString("string_text"); //Code in Activity Intent i = new Intent("android.intent.action.PHONE_STATE"); i.putExtra("string_text

嘿,我一直在尝试将一个字符串数组从我的活动传递到广播接收器,但它在广播接收时总是给我空值。我用了2-3种方法进行了尝试

// Code in Receiver
String stringText= intent.getExtras().getString("string_text");

//Code in Activity
   Intent i = new Intent("android.intent.action.PHONE_STATE");
i.putExtra("string_text", "abc");
 sendBroadcast(i);
但在接收端,stringText总是为空。我试过另一种方法,但没有成功

String text= (String)intent.getSerializableExtra("string_text");

但到目前为止,没有人能帮我解决这个问题吗?

首先,你为什么要尝试从活动到广播接收器进行通信?这是极不寻常的行为,以至于它暗示了代码组织问题


第二,为什么要使用android.intent.action.PHONE\u STATE?我很有信心你不是谷歌的员工。因此,您不应该使用系统定义的操作字符串。事实上,这很可能是你的困难之源——我怀疑你是否能发送那个广播。

首先,你为什么要尝试从活动到广播接收器进行通信?这是极不寻常的行为,以至于它暗示了代码组织问题

public class GlobalVariable extends Application {

  private String[] var;

  public String[] getVar(){
    return var;
  }
  public void setVar(String[] var){
    this.var= var;
  }
}
第二,为什么要使用android.intent.action.PHONE\u STATE?我很有信心你不是谷歌的员工。因此,您不应该使用系统定义的操作字符串。事实上,这很可能是你困难的根源——我怀疑你能否发送那个广播

public class GlobalVariable extends Application {

  private String[] var;

  public String[] getVar(){
    return var;
  }
  public void setVar(String[] var){
    this.var= var;
  }
}
并在我的活动中称之为

GlobalVariable appState = ((GlobalVariable) this.activity.getApplication());
appState.getVar() 
以上代码行以类似的方式进行检索设置

并在我的活动中称之为

GlobalVariable appState = ((GlobalVariable) this.activity.getApplication());
appState.getVar() 

上面的代码行检索类似的设置方式

我使用了一个扩展应用程序并通过应用程序范围调用我的变量的类,现在它对我的工作很好。我使用了一个扩展应用程序并通过应用程序范围调用我的变量的类,现在它对我的工作很好