Борьба с FATAL EXCEPTION: AsyncTask # 3 - PullRequest
0 голосов
/ 02 мая 2018

Я действительно борюсь с этой ошибкой, я пробовал много вещей, но я думаю, что у меня не было достаточно знаний, чтобы исправить это ... Не могли бы вы помочь мне ??

Это мой класс

public class Profile_Page extends Activity {

TextView profile_user;
TextView profile_nombre;
TextView profile_email;
TextView profile_fuentes;
String id, email;


// Progress Dialog
private ProgressDialog pDialog;

// JSON Parser Class
JSONParser jsonParser = new JSONParser();

// URL De Información del Usuario
private static final String url_user_details = "http://example.com/usserdetails.php";


// JSON Node Names
private static final String TAG_SUCCESS = "success";
private static final String TAG_USER = "user";
private static final String TAG_ID = "id";
private static final String TAG_USERNAME = "usuario";
private static final String TAG_NAME = "nombre";
private static final String TAG_EMAIL = "email";
private static final String TAG_FOUNTAINS = "fuentes_visitadas";

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(R.layout.activity_profile__page);
    profile_user = findViewById(R.id.profile_user);
    profile_nombre = findViewById(R.id.profile_name);
    profile_email = findViewById(R.id.profile_email);
    profile_fuentes = findViewById(R.id.profile_fuentes);

    id = "1";

    new GetUserDetails().execute();


}

В том же классе у меня есть метод Backgroundtask, который получает информацию из веб-службы PHP, я получаю правильные данные из базы данных, но когда я пытаюсь поместить их в переменную, чтобы изменить мое текстовое представление с информацией, я получаю ошибку .

/**
 * Background Async Task to Get complete product details
 * */
class GetUserDetails extends AsyncTask<String, Void, String> {


    @Override
    protected void onPreExecute() {

    }

    protected String doInBackground(String... parans) {

                // Check for success tag
                int success;
                try {
                    // Building Parameters
                    List<NameValuePair> params = new ArrayList<NameValuePair>();
                    params.add(new BasicNameValuePair("id", id));

                    // getting product details by making HTTP request
                    // Note that product details url will use GET request
                    JSONObject json = jsonParser.makeHttpRequest(
                            url_user_details, "GET", params);

                    // check your log for json response
                    Log.d("Single Product Details", json.toString());

                    // json success tag
                    success = json.getInt(TAG_SUCCESS);
                    if (success == 1) {
                        // successfully received product details
                        JSONArray productObj = json
                                .getJSONArray(TAG_USER); // JSON Array

                        // get first product object from JSON Array
                        JSONObject product = productObj.getJSONObject(0);

                        // display product data in TextViews
                        profile_user.setText(product.getString(TAG_USERNAME));
                        profile_nombre.setText(product.getString(TAG_NAME));
                        profile_email.setText(product.getString(TAG_EMAIL));
                        profile_fuentes.setText(product.getString(TAG_FOUNTAINS));

                    }else{
                        // product with pid not found
                    }
                } catch (JSONException e) {
                    e.printStackTrace();
                }


        return null;
    }

    /**
     * After completing background task Dismiss the progress dialog
     * **/
    protected void onPostExecute(String file_url) {
        // dismiss the dialog once got all details
        //pDialog.dismiss();
    }


}

Поэтому, когда я запускаю приложение, как я сказал вам, я могу получить данные, но я получаю сообщение об ошибке, и приложение перестает работать.

Вот ошибка. Error

Спасибо. Кстати, я пытался найти людей с той же ошибкой, но не смог ее исправить.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...