我有一个Android应用程序解析来自this web URL字符串并将它们存储到一个数组称为phoneNumberList
。然后,在时机成熟时,手机的拨号器推出,携带着那个电话号码。问题是,拨号器显示空白。任何想法为什么?主叫号码从已解析的XML字符串中的Android应用程序
这里是我的代码来解析XML文件,并将其存储在一个阵列:
try {
URL url = new URL("http://dl.dropbox.com/u/38725067/webexample/Site%203/index.xml");
URLConnection conn = url.openConnection();
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document doc = builder.parse(conn.getInputStream());
NodeList nodes = doc.getElementsByTagName("phone");
for (int i = 0; i < nodes.getLength(); i++) {
Element element = (Element) nodes.item(i);
NodeList title = element.getElementsByTagName("string");
Element line = (Element) title.item(0);
phoneNumberList[i] = getCharacterDataFromElement(line);
}
}
...这是我的代码,启动拨号器:
public void launchDialer(String number){
String numberToDial = "tel:"+number;
startActivity(new Intent(Intent.ACTION_DIAL, Uri.parse(numberToDial)));
}
public void onClick(View v) {
String numberToCall = "0";
switch (v.getId()) {
case R.id.police_button1:
numberToCall = Main.phoneNumberList[0];
launchDialer(numberToCall);
break;
case R.id.police_button2:
launchDialer(Main.phoneNumberList[1]);
break;
}
}
~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
注1:在URL中,你会看到我尝试两种格式的电话号码:一个破折号,一个没有;既没有工作。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
注2:在后者的代码段,你可以看到我打过电话数量的两种不同的方式:使用字符串numberToCall
,一个没有串一个;既没有工作。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
谢谢你在先进的任何和所有帮助 -
迈克·盖茨
您是否检查过phoneNumberList是否包含正确的数据?它是否包含电话号码? –
我最初将包含电话号码的代码片段作为Java应用程序运行,并且工作正常。它确实包含了数字。但是,它不希望包含此Android应用程序中的数字。 – Mxyk