1

我正在使用该android-async-http-1.4.4.jar库,这是我的代码的样子,我故意省略了声明/实现REMOTE_PHP_URLentityJSON假设它们已正确实现)。

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.postLogCat 时显示:

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()

谢谢。

4

1 回答 1

0

我解决了,我的 PHP 文件没有返回正确的JSONObject. 我不小心在我的 PHP 文件中留下了一些echo's 用于调试目的而忘记删除它们。声明没有错client.post

于 2014-06-23T17:11:04.243 回答