SMSlist_activity.java
SMS 会話のリストを表示する があります。- 私は
sms_receiver.java
着信SMSのブロードキャストレシーバーを持っています。
SMSlist_activity.java
で SMS を受信したときにSMS の会話リストを更新したいと考えていsms_receiver.java
ますSMSlist_activity.java
。
誰かがアイデアを持っているなら、私はここに喜んでいます。
最後に、ブロードキャスト レシーバーを使用した解決策を見つけました。int sms_receiver.java、SMS が受信されたとき、インテントをブロードキャストします。
Intent intent2 = new Intent();
intent2.setAction("co.ir.ts.app.sms.smsumad");
context.sendBroadcast(intent2);
SMSlist_activity.java 定義のアプリ マニフェストで、インテント フィルターを追加して、SMSlist_activity.java がブロードキャストを受信できるようにします。
<activity
android:name=".activity.SMSlist_activity">
<intent-filter>
<action android:name="co.ir.ts.app.sms.smsumad" >
</action>
</intent-filter>
</activity>
SMSlist_activity.java のメイン クラスで、ブロードキャスト レシーバーを定義します。
private BroadcastReceiver receiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
//Updating UI here
}
};
onResume メソッドで、上記で作成したレシーバーを登録します。
@Override
protected void onResume() {
// TODO Auto-generated method stub
IntentFilter filter = new IntentFilter();
filter.addAction("co.ir.ts.app.sms.smsumad");
registerReceiver(receiver, filter);
super.onResume();
}
最後に onPause メソッドでレシーバーの登録を解除します。
protected void onPause()
{
unregisterReceiver(receiver);
super.onPause();
if (isSentPending)
{
unregisterReceiver(sent);
}
}