1

嘿我一直在嘗試從我的活動傳遞一個字符串數組廣播接收器,但它總是讓我在廣播接收空我已經嘗試過2-3種方式。從活動傳遞參數到BroadcastReceiver

// 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"); 

但直到現在沒有人能幫助我解決這個問題嗎?

回答

1
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

首先,你爲什麼試圖從一個活動與廣播接收器進行通信?這是非常不尋常的行爲,它暗示了代碼組織問題。

二,你爲什麼用android.intent.action.PHONE_STATE?我相當確信您不會爲Google工作。因此,您不應該使用系統定義的操作字符串。事實上,這很可能是您的困難之源 - 我懷疑您可以發送該廣播。

+0

我以擴展應用程序中的類來完成它,並通過應用程序調用我的變量範圍,現在它對我的工作很好 –

相關問題