0

httpclient(apache)在开发 Android 应用程序时用来获取一个宁静的 API,就像

HttpGet httpget = new HttpGet("http://9.123.151.73:4414/apiv1/data");
HttpResponse response = httpclient.execute(httpget);

和xml,我已经设置了权限:

`<uses-permission android:name="android.permission.INTERNET" />`

但它总是超时。

然后我尝试这些情况:

  1. 在浏览器中打开网址,它可以工作
  2. 用相同的代码新建一个简单的java项目,它可以工作
  3. 将 url 替换为其他 REST API,例如 http://api.search.yahoo.co/NewsSearchService/V1/

那么,你能给我任何关于这个问题的建议吗,我想知道为什么其余的 API 不能在 Android 应用程序中使用,是什么错误?

4

1 回答 1

0

我相信这是由于没有设置网络连接的权限。以下是您需要添加到 AndroidMainfest.xml 文件以允许访问 Internet 的内容:

<manifest xlmns:android...>
 ...
 <uses-permission android:name="android.permission.INTERNET"></uses-permission>
</manifest>

以下是权限说明:

INTERNET 允许应用程序打开网络套接字。

您可以通过以下链接查看有关权限的更多信息:

如果您使用的是 eclipse,请按照以下方式设置权限:

如果您使用 Eclipse ADT 插件进行开发,请在 Android Manifest Editor 中打开“AndroidManifest.xml”(应该是从项目文件列表中打开 androidmanifest.xml 的默认操作),选择底部的“Permissions”选项卡的编辑器(清单 - 应用程序 - 权限 - 仪器 - AndroidManifest.xml),然后“添加...”一个“使用权限”并从右侧的下拉列表中选择所需的权限,或者只是复制粘贴到必要的一个(比如你需要的“android.permission.INTERNET”权限

http://developer.android.com/reference/android/Manifest.permission.html

于 2013-06-03T06:58:17.423 回答