insert data
String
registerReceiver
Service
如何 Intent ir=new Intent();
ir.setAction(MY_ACTION);
ir.putExtra("Webresponse", Webresponse);
sendBroadcast(ir);
,我的代码如下。
在我的Activity
我写了这段代码:
private class MyReceiver extends BroadcastReceiver{
@Override
public void onReceive(Context arg0, Intent arg1) {
String datapassed = arg1.getStringExtra("Webresponse");
Toast.makeText(ChatPage.this,
"Triggered by Service!\n"
+ "Data passed: " + datapassed,
Toast.LENGTH_LONG).show();
}
}
在onCreate
我得到数据:
Toast
然后在insert data
中,我可以使用MyReceiver m = new MyReceiver();
IntentFilter intentFilter = new IntentFilter();
intentFilter.addAction(ChatPage_Service.MY_ACTION);
registerReceiver(m, intentFilter);
获取数据并查看数据,但我需要字符串值中的String values = registerReceiver(m, intentFilter);
:
{{1}}
我需要:
{{1}}
答案 0 :(得分:0)
如果您填写了ListView,则应将其填入private class MyReceiver extends BroadcastReceiver
。
例如,这是我的代码:
private class MyReceiver extends BroadcastReceiver{
@Override
public void onReceive(Context arg0, Intent arg1) {
datapassed = arg1.getStringExtra("Webresponse");
try {
XmlToDocument xmltodoc = new XmlToDocument();
Document doc = xmltodoc.getDomElement(datapassed);
// normalize text representation
doc.getDocumentElement().normalize();
NodeList listOfPersons = doc
.getElementsByTagName("user");
adapter.clear();
for (int s = 0; s < listOfPersons.getLength(); s++) {
StructPasokhgoo stp = new StructPasokhgoo();
Node firstPersonNode = listOfPersons.item(s);
if (firstPersonNode.getNodeType() == Node.ELEMENT_NODE) {
Element firstPersonElement = (Element) firstPersonNode;
NodeList ageList = firstPersonElement
.getElementsByTagName("group");
Element ageElement = (Element) ageList
.item(0);
NodeList textAgeList = ageElement
.getChildNodes();
group = ((Node) textAgeList.item(0))
.getNodeValue().trim();
if (group.equals("admin")) {
//----//
NodeList firstNameList = firstPersonElement
.getElementsByTagName("id");
Element firstNameElement = (Element) firstNameList
.item(0);
NodeList textFNList = firstNameElement
.getChildNodes();
id = ((Node) textFNList.item(0))
.getNodeValue().trim();
//----//
NodeList lastNameList = firstPersonElement
.getElementsByTagName("name");
Element lastNameElement = (Element) lastNameList
.item(0);
NodeList textLNList = lastNameElement
.getChildNodes();
name = ((Node) textLNList.item(0))
.getNodeValue().trim();
stp.NameS = name;
stp.Group = group;
stp.IdS = id;
pasokhgo.add(stp);
}
if (group.equals("user")) {
//----//
NodeList firstNameList = firstPersonElement
.getElementsByTagName("id");
Element firstNameElement = (Element) firstNameList
.item(0);
NodeList textFNList = firstNameElement
.getChildNodes();
idTwo = ((Node) textFNList.item(0))
.getNodeValue().trim();
//----//
NodeList lastNameList = firstPersonElement
.getElementsByTagName("name");
Element lastNameElement = (Element) lastNameList
.item(0);
NodeList textLNList = lastNameElement
.getChildNodes();
nameTwo = ((Node) textLNList.item(0))
.getNodeValue().trim();
//----//
stp.NameE = nameTwo;
stp.Group = group;
stp.IdE = idTwo;
pasokhgo.add(stp);
}
}
}
adapter.notifyDataSetChanged();
} catch (Throwable t) {
t.printStackTrace();
}
}
}
我遇到了这个问题而我无法在活动中获取数据,我只能看到吐司,但随后我会在listView
中填写MyReceiver.class
。