怎么把Broadcast Receiver里面获取的数据传给Activity
2个回答
展开全部
一、解决:
1)定义一个接口 让 Activity实现这个接口;
2)接受者调用接口里面的方法把要传递的参数传进去。
二、activity书写:
package com.ht.dianliang;
import android.app.Activity;
import android.content.Intent;
import android.content.IntentFilter;
import android.os.Bundle;
import android.widget.TextView;
public class MainActivity extends Activity implements DianLiangBR.BRInteraction {
private TextView textView;
/**
* Called when the activity is first created.
*/
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
textView = (TextView) findViewById(R.id.text);
IntentFilter intentFilter = new IntentFilter();
intentFilter.addAction(Intent.ACTION_BATTERY_CHANGED);
DianLiangBR dianLiangBR = new DianLiangBR();
registerReceiver(dianLiangBR, intentFilter);
dianLiangBR.setBRInteractionListener(this);
}
@Override
public void setText(String content) {
if (content != null) {
textView.setText(content);
}
}
}
1)定义一个接口 让 Activity实现这个接口;
2)接受者调用接口里面的方法把要传递的参数传进去。
二、activity书写:
package com.ht.dianliang;
import android.app.Activity;
import android.content.Intent;
import android.content.IntentFilter;
import android.os.Bundle;
import android.widget.TextView;
public class MainActivity extends Activity implements DianLiangBR.BRInteraction {
private TextView textView;
/**
* Called when the activity is first created.
*/
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
textView = (TextView) findViewById(R.id.text);
IntentFilter intentFilter = new IntentFilter();
intentFilter.addAction(Intent.ACTION_BATTERY_CHANGED);
DianLiangBR dianLiangBR = new DianLiangBR();
registerReceiver(dianLiangBR, intentFilter);
dianLiangBR.setBRInteractionListener(this);
}
@Override
public void setText(String content) {
if (content != null) {
textView.setText(content);
}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2015-04-01
展开全部
在braodcast receiver中的onReceive方法 调用 intent.getExtras().get(“pdus”)获取 短信Object[] 数组
然后遍历数组 将每一个Object通过SmsMessage的Create方法 转换为 SmsMessage即可,每一个Object都是该方法需要的byte[]数组参数,强转一下就好了
然后遍历数组 将每一个Object通过SmsMessage的Create方法 转换为 SmsMessage即可,每一个Object都是该方法需要的byte[]数组参数,强转一下就好了
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询