我正在使用android-async-http-1.4.4.jar
库,这是我的代码的样子,我故意遗漏了REMOTE_PHP_URL
和entityJSON
的声明/实现(假设它们是正确实施)。
public class SearchFragment extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_search, container, false);
mFindButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
final AsyncHttpClient client = new AsyncHttpClient();
//entityJSON and REMOTE_PHP_URL are implemented correctly
client.post(getActivity(), REMOTE_PHP_URL, entityJSON, "application/json", new JsonHttpResponseHandler() {
@Override
public void onSuccess(JSONObject jsonResultObject) {
/*Success Code here*/
}
});
}
}
}
}
执行client.post
LogCat时显示:
dalvikvm GC_FOR_ALLOC freed 1463K, 21% free 6851K/8628K, paused 4ms, total 4ms
一遍又一遍(无限循环),直到我在DDMS中停止进程。 LogCat不会显示任何(红色)错误。
请记住,上面的代码在我的应用程序中运行其他活动就好了。我认为这可能与它在片段中运行或与上下文或两者都有关的事实有关。我是android的新手,我应该使用除getActivity()
以外的其他内容吗?
我已尝试更新为android-async-http-1.4.5.jar
,但当我这样做时,由于某种原因,我无法@Override
onSuccess()
。
感谢。
答案 0 :(得分:0)
我解决了,我的PHP文件没有返回正确的JSONObject
。我不小心在我的PHP文件中留下了一些echo
用于调试目的而忘记删除它们。 client.post
声明没有错!