Форум программистов, компьютерный форум CyberForum.ru

Не читается JSON: "Error parsing data" - Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Android Создание RSS на базе Material Design http://www.cyberforum.ru/android-dev/thread1497397.html
Добрый день! Подсел на тему Материал Дизайн. Уж очень она мне понравилась. Сам никогда не разрабатывал приложения под андроид, а тут вдруг решил попробовать свои знания. По примерам работ в других сферах получалось разобраться и "смастерить" свое чудо :) По аналогии всегда ведь легче, даже если и не знаешь ничего. Но это не суть. Проблема меня постигла, когда решил в существующий пример...
Android Как указать с какой SIM отправить SMS Здравствуйте, я отправляю SMS через функцию smsManager.sendTextMessage(n1, null, text, spin, dpin); но как указать с какой SIM карты (если их 2 в телефоне) отправлять SMS сообщение? http://www.cyberforum.ru/android-dev/thread1497396.html
Android Не всегда загружаются картинки с сайта
А вы не знаете почему некоторые картинки из интернета нельзя загрузить в приложение. Я использовал разные методы в то числе и библиотеку Android Quary но вот такая штука: картинку с одного url я читаю в ImageView норм методом aq = new AQuery(this); aq.id(R.id.image).image("http://i.imgur.com/aNu0KI6.jpg"); а другую картинку которая находится по другому url прочитать не...
Как расшифровать русский текст из Json-файла? Android
Всем привет. Вот какая штука, есть ссылка по ней, я получаю json файл. {"result":}]},{"id":"152946","city_id":"54","show_phone":"1","notes":"\u0441 \u0442\u0443\u043c\u0430\u043d\u043a\u0430\u043c\u0438","car":{"year":"2006","wheel":"1","body":"CBA-ACU30W","engine":"","vin":"","manufacturer_id":"86","model_id":"10111"},"created":"2015-06-25 08:57:52","orderlist":}]}]} ...
Android Выдает ошибку 'Canne not resolve sybol' на FragmentStackSupport, LoaderCursorSupport, LoaderCustomSupport, Loa http://www.cyberforum.ru/android-dev/thread1497359.html
Создаю TabHost в Фрагменте public class FragmentTabs extends FragmentActivity { private FragmentTabHost mTabHost; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.title_section1);
Android Программирование Android для начинающих Есть знания C/C++. Хватит ли сайта http://developer.android.com/ чтобы научиться программировать под Android? подробнее

Показать сообщение отдельно
molniya101
0 / 0 / 0
Регистрация: 11.04.2015
Сообщений: 1

Не читается JSON: "Error parsing data" - Android

11.07.2015, 22:39. Просмотров 343. Ответов 0
Метки (Все метки)

Здравствуйте!
Очень долго пытаюсь решить этот вопрос. Нашёл много тем и попробовал много способов. Ничего не помогло.
На основе http://devcolibri.com/1486 и http://devcolibri.com/1548 сделал сервер и клиент.
При попытке создать пользователя происходит следующие: запись в БД происходит, а приложение зависает.

Выдаёт 07-11 19:13:52.226: E/JSON Parser(2902): Error parsing data org.json.JSONException: Value ?»??»??»?<!--error--><br of type java.lang.String cannot be converted to JSONObject

Вместо ? там i с двумя точками и перевёрнутые ?.

Вот коды.

create_user.php

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<?php
 
$response = array();
 
if (isset($_POST['number']) && isset($_POST['password'])) {
 
    $name = $_POST['name'];
    $age = $_POST['age'];
    $number = $_POST['number'];
    $email = $_POST['email'];
    $car = $_POST['car'];
    $myself = $_POST['myself'];
    $password = $_POST['password'];
 
    require 'db_connect.php';
 
    $db = new DB_CONNECT();
  
    
    $result = mysql_query("INSERT INTO users(name, age, number, email, car, myself, password) VALUES('$name', '$age', '$number', '$email', '$car', '$myself', '$password')");
    
 
    if ($result) {
        $response["success"] = 1;
        $response["message"] = "User successfully created.";
 
        echo json_encode($response);
    } else {
        $response["success"] = 0;
        $response["message"] = "Oops! An error occurred.";
 
        echo json_encode($response);
    }
} else {
    $response["success"] = 0;
    $response["message"] = "Required field(s) is missing";
 
    echo json_encode($response);
}
?>

reg_activity.java

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
<?php
 
 
$response = array();
 
if (isset($_POST['number']) && isset($_POST['password'])) {
 
    $name = $_POST['name'];
    $age = $_POST['age'];
    $number = $_POST['number'];
    $email = $_POST['email'];
    $car = $_POST['car'];
    $myself = $_POST['myself'];
    $password = $_POST['password'];
 
    require 'db_connect.php';
 
    $db = new DB_CONNECT();
  
    
    $result = mysql_query("INSERT INTO users(name, age, number, email, car, myself, password) VALUES('$name', '$age', '$number', '$email', '$car', '$myself', '$password')");
    
 
    if ($result) {
        $response["success"] = 1;
        $response["message"] = "User successfully created.";
 
        echo json_encode($response, JSON_UNESCAPED_UNICODE);
    } else {
        $response["success"] = 0;
        $response["message"] = "Oops! An error occurred.";
 
        echo json_encode($response, JSON_UNESCAPED_UNICODE);
    }
} else {
    $response["success"] = 0;
    $response["message"] = "Required field(s) is missing";
 
    echo json_encode($response, JSON_UNESCAPED_UNICODE);
}
?>
JSONParser.java

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
package ru.map;
 
import android.util.Log;
 
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.client.utils.URLEncodedUtils;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.protocol.HTTP;
import org.json.JSONException;
import org.json.JSONObject;
 
import java.io.*;
/*import java.net.URL;
import java.nio.charset.Charset;*/
import java.util.List;
 
public class JSONParser {
 
    static InputStream is = null;
    static JSONObject jObj = null;
    static String json = "";
 
    // constructor
    public JSONParser() {
 
    }
 
    // метод получение json объекта по url
    // используя HTTP запрос и методы POST или GET
    public JSONObject makeHttpRequest(String url, String method, List<NameValuePair> params) {
 
        // Создаем HTTP запрос
        try {
 
            // проверяем метод HTTP запроса
            if(method == "POST"){
                DefaultHttpClient httpClient = new DefaultHttpClient();
                HttpPost httpPost = new HttpPost(url);
                httpPost.setEntity(new UrlEncodedFormEntity(params, "utf-8"));
 
                HttpResponse httpResponse = httpClient.execute(httpPost);
                HttpEntity httpEntity = httpResponse.getEntity();
                is = httpEntity.getContent();
 
            }else if(method == "GET"){
                DefaultHttpClient httpClient = new DefaultHttpClient();
                String paramString = URLEncodedUtils.format(params, "utf-8");
                url += "?" + paramString;
                HttpGet httpGet = new HttpGet(url);
 
                HttpResponse httpResponse = httpClient.execute(httpGet);
                HttpEntity httpEntity = httpResponse.getEntity();
                is = httpEntity.getContent();
            }
 
        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
        } catch (ClientProtocolException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
 
        try {
            BufferedReader reader = new BufferedReader(new InputStreamReader(is, "iso-8859-1"), 8);
            StringBuilder sb = new StringBuilder();
            String line = null;
            while ((line = reader.readLine()) != null) {
                sb.append(line + "\n");
            }
            is.close();
            json = sb.toString();
        } catch (Exception e) {
            Log.e("Buffer Error", "Error converting result " + e.toString());
        }
 
        // пытаемся распарсить строку в JSON объект
        try {
            jObj = new JSONObject(json);
        } catch (JSONException e) {
            Log.e("JSON Parser", "Error parsing data " + e.toString());
        }
 
        // возвращаем JSON строку
        return jObj;
 
    }
    
 
}
После записи в БД программа зависает, а Eclipse перекидывает в файл ThreadPoolExecutor.class на место:

Java
1
2
3
4
5
    final void runWorker(Worker w) {
        Thread wt = Thread.currentThread();
        Runnable task = w.firstTask;
        w.firstTask = null;
        w.unlock(); // allow interrupts
Конкретно на w.unlock(); // allow interrupts.

Помогите пожалуйста, не одну неделю бьюсь. Одно время работало, потом перестало и ни в какую.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 14:54. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru