0

我正在尝试从 mimetype text/vcard 的 Web URI 接收数据流,以便我可以使用我的 vcard 解析器对其进行解析。我目前的代码是:

    Uri.Builder b = Uri.parse("http://www.cs.auckland.ac.nz/our_staff/vcard.php").buildUpon();
    b.appendQueryParameter("upi", items.get(pos));
    Uri uri = b.build();
    Intent i = new Intent(Intent.ACTION_VIEW, uri);                 
    Log.d("URL of staff", uri.toString());
    i.setDataAndType(uri, "text/vcard");
    activity.startActivity(i);      

但是,这会返回异常:

06-01 06:49:21.021: E/AndroidRuntime(1659): android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.VIEW dat=http://www.cs.auckland.ac.nz/our_staff/vcard.php?upi=kng001 typ=text/vcard }

我为此使用了错误的操作类型吗?不应该是 ACTION_VIEW 吗?还是我通过错误的方法设置数据类型?

谢谢。

4

1 回答 1

1

您可能想使用URLConnection

URL url = new URL(uri.toString());
URLConnection urlConnection = url.openConnection();
InputStream in = new BufferedInputStream(urlConnection.getInputStream());

您可以将其读入字节数组或字符串并稍后解析。

于 2013-06-01T07:00:48.953 回答