Передача параметров из действия в BroadcastReceiver - PullRequest
1 голос
/ 08 августа 2011

Эй, я пытался передать массив строк из своей активности в широковещательный приемник, но он всегда дает мне нулевое значение при широковещательном приеме, я пробовал это 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 всегда имеет значение null.Я попробовал это по-другому, но не повезло

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

Но до сих пор не повезло, кто-нибудь может мне помочь с этим вопросом?

Ответы [ 2 ]

1 голос
/ 08 августа 2011
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() 

над строкой кода для получения аналогичного способа установки

0 голосов
/ 08 августа 2011

Во-первых, почему вы пытаетесь общаться от действия к получателю вещания? Это крайне необычное поведение, так что оно предполагает проблему с организацией кода.

Во-вторых, почему вы используете android.intent.action.PHONE_STATE? Я довольно уверен, что вы не работаете на Google. Следовательно, вы не должны использовать системную строку действия. На самом деле, вполне возможно, что это источник ваших трудностей - я сомневаюсь, что вы можете отправить эту трансляцию.

...