Android AsyncHttpClient post() в бесконечный цикл во фрагменте

#java #android #post #android-fragments #asynchttpclient

#java #Android #Публикация #android-фрагменты #asynchttpclient

Вопрос:

Я использую 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() по какой-то причине не могу.

Спасибо.

Ответ №1:

Я решил это, мой PHP-файл не возвращал правильное JSONObject значение. Я случайно оставил несколько echo файлов в своем PHP-файле для целей отладки и забыл их удалить. В этом client.post утверждении не было ничего плохого!