0

Geo-locationSMSを受信し、着信電話番号に送信するアプリを開発しています。SMSReceiverは1つのクラスで、もう1つのクラスはMainActivity.です。

SMSReceiver extends BroadcastReceiver

MainActivity extends Activity..。

Phone_number今、私は(文字列)をSMSReceiverクラスからに送信したいと思いますMainActivity..

何か案は?私はAndroid開発の初心者です!! あなたがコードを必要とするならば、私は与えるでしょう。前もって感謝します !

4

1 に答える 1

0

新しい MainActivity を開始していますか?

もしそうなら、

String phone = "";
Intent theIntent = new Intent(this, MainActivity.class); 
theIntent.putExtra("phoneNumber", phone);
startActivity(theIntent);

すでに実行中の MainActivity の変更をブロードキャスト レシーバーにトリガーさせることはお勧めしません。ただし、本当にやりたい場合は、これを管理する方法が 2 つあります。

  1. マニフェストでアクティビティを に設定しsingleInstance、関数をオーバーライドして、onNewIntent()以前と同じコードをブロードキャスト レシーバーで実行します。

  2. コンテンツ プロバイダー/モデルを作成し、メイン アクティビティにプロバイダー/モデルをリッスンさせ、ブロードキャスト レシーバーが起動されたときにモデルを更新します。(これははるかに複雑です)

于 2012-10-21T12:02:52.030 に答える