HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost(Uri.parse(R.string.get_question_url));
HttpResponse httpresponse = httpclient.execute(httppost);
HttpEntity httpentity = new response.getEntity();
InputStream isr = httpentity.getContent();
第2行:HttpPost httppost = new HttpPost(Uri.parse(R.string.get_question_url));
我想知道为什么,有人知道帮助吗?
答案 0 :(得分:2)
R.string.something返回资源的整数标识符,而不是您似乎期望的实际字符串内容。您必须使用getString()
才能从其标识符中获取实际的字符串资源。
使用它代替从字符串资源实际构建Uri,而不是从字符串资源的标识符构建:
HttpPost httppost = new HttpPost(Uri.parse(getString(R.string.get_question_url)));
假设您在Context的子类中运行此代码。
否则,请使用:
HttpPost httppost = new HttpPost(Uri.parse(yourContext.getResources().getString(R.string.get_question_url)));
答案 1 :(得分:1)
您项目中的所有资源都由int
数字标识,无论它们是什么:Drawables,Layouts,Strings ......所以每当您将资源命名为android:id="@+id/whatever"
时,Android内部将其表示为int
,您可以通过R.resource.name
自动生成的索引进行访问。