Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.94/16: Рейтинг темы: голосов - 16, средняя оценка - 4.94
7 / 7 / 5
Регистрация: 28.07.2014
Сообщений: 104

Правильное формирование и разбор JSON

07.03.2016, 01:58. Показов 3393. Ответов 20
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте! Ситуация такова: есть таблица в mySQL, со следующими полями id, description, longitude, latitude. Таблица заполнена, description - название здания, longitude, latitude - координаты.
В php я создаю и заполняю массив который выдергивает эти координаты, если это здание упоминается в другом массиве. Создаю и заполняю вот так.
PHP
1
2
3
4
5
6
7
8
9
10
11
foreach ($records as $row)
        {
            $coordinates = array();             
            $coordinate = $mysqli->query("SELECT longitude, latitude FROM housing WHERE description='".$row['id_housing']."'");
                while ($kd = $coordinate->fetch_assoc())
                {
                    $coordinates[] = $kd;
                }
/*Перевожу массив в JSON*/
                $a = json_encode($coordinates);
        }
Теперь мне необходимо разобрать JSON в JS. Но как я ни гуглил не пойму как это сделать. Да и сам JSON у меня странно выглядит - 2 разных здания - 2 пары квадратных скобок:
PHP
1
2
3
                $a = json_encode($coordinates);
                echo $a;
/*JSON - [{"longitude":"55.830457","latitude":"37.554969"}][{"longitude":"55.832995","latitude":"37.549956"}]*/
2 пары квадратных скобок это нормально или всё должно быть в одних квадратных скобках?
Что я хочу от скрипта JS. Цикл, который перебирает массив JSON и присваивает переменной X - значение longitude, а Y - значение latitude.
JavaScript
1
2
3
4
var coordinates = JSON.parse(<?php echo $a;?>, function(key, value)
            {
/*мне кажется у меня в coordinates только половина [{"longitude":"55.830457","latitude":"37.554969"}] */
            });
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
07.03.2016, 01:58
Ответы с готовыми решениями:

Разбор многомерного массива (Json, мультиполигон)
Имеется массив вида: , , , , ], , , ] ] С помощью функции function parseArray(arr) { var newArr = ;...

Разбор JSON и вывод таблицы с одной строкой + AJAX
вот код &lt;html&gt; &lt;head&gt; &lt;meta charset=&quot;UTF-8&quot;&gt; &lt;title&gt;JDBC Examples&lt;/title&gt; &lt;link rel=&quot;stylesheet&quot;...

Разбор JSON, используя Newtonsoft.Json
Добрый день! Подскажите пожалуйста, как десериализовать JSON-ответ следующего вида {&quot;result&quot;: ...

20
81 / 81 / 50
Регистрация: 26.11.2012
Сообщений: 303
07.03.2016, 02:34
TampLieR, json_encode - сереализирует данные, в основном для отправки на клиента (в браузер)

по идее вам должен прийти массив из 2ух обьектов

вот примерный код, если я вас правильно понял - https://jsfiddle.net/xxtLL2La/

Добавлено через 1 минуту
на сколько я понял у вас все в одном файле)
каша это не хорошо)
0
7 / 7 / 5
Регистрация: 28.07.2014
Сообщений: 104
07.03.2016, 02:50  [ТС]
temkasky, нет не в одном файле, но и утверждать что у меня все правильно не возьмусь. Есть файл index.php в нём подключение к БД, обработчик формирования страниц и массивы я тоже там формировал. Есть шаблоны, где происходит сбор страницы из кусочков контента, + header, footer.
Код JS у меня в находится в header.php
Спасибо, сейчас попробую!
0
07.03.2016, 02:55

Не по теме:

php код держите в php файлах
html -> *.html
js -> *.js
json -> *.json

Совет на будущее)
потом самому же будет легче)
вы же css код инлайново не пишете в php файлы.
..я надеюсь)

0
7 / 7 / 5
Регистрация: 28.07.2014
Сообщений: 104
07.03.2016, 03:14  [ТС]
temkasky,
Цитата Сообщение от temkasky Посмотреть сообщение
//По идее объект у вас выглядит так.
JavaScript
1
2
3
4
5
6
7
8
9
10
var testObject = [
    {
    "longitude":"55.830457",
    "latitude":"37.554969"
  },
  {
    "longitude":"55.832995",
    "latitude":"37.549956"
  }
];
Нет, поэтому я и спрашивал про 2 пары квадратных скобок.
Выглядит если в php распечатать так -
PHP
1
[{"longitude":"55.830457","latitude":"37.554969"}][{"longitude":"55.832995","latitude":"37.549956"}]
Добавлено через 1 минуту
В JS вот так -
JavaScript
1
[{"longitude":"55.830457","latitude":"37.554969"}]
Только половина

Добавлено через 6 минут
temkasky, css пишу в .css, остальное в php. А если в файле с расширением .html встретится переменная <?php=$b?>. Она же не отобразится?
0
81 / 81 / 50
Регистрация: 26.11.2012
Сообщений: 303
07.03.2016, 03:20
ааа, я понял.
не обратил внимания что вы гоняете в цикле
PHP
1
 $a = json_encode($coordinates);
вынести надо за цикл.

PHP
1
2
3
4
5
6
7
8
9
10
11
foreach ($records as $row)
        {
            $coordinates = array();             
            $coordinate = $mysqli->query("SELECT longitude, latitude FROM housing WHERE description='".$row['id_housing']."'");
                while ($kd = $coordinate->fetch_assoc())
                {
                    $coordinates[] = $kd;
                }
        }
/*Перевожу массив в JSON*/
                $a = json_encode($coordinates);
0
7 / 7 / 5
Регистрация: 28.07.2014
Сообщений: 104
07.03.2016, 03:29  [ТС]
Спасибо, а я думаю что-то не то! Вроде 1 пара квадратных скобок должна быть, у меня две. С json сегодня первый день общаюсь

Добавлено через 3 минуты
Хм, а теперь у меня почему-то и в распечатке с php только координаты второго здания - первого нет.
JSON
1
[{"longitude":"55.832995","latitude":"37.549956"}]
Добавлено через 21 секунду
А должно быть 2.
0
81 / 81 / 50
Регистрация: 26.11.2012
Сообщений: 303
07.03.2016, 03:35
это распечатка с $a?
или это на браузер приходит половина?
0
7 / 7 / 5
Регистрация: 28.07.2014
Сообщений: 104
07.03.2016, 03:37  [ТС]
Распечатка $a
0
81 / 81 / 50
Регистрация: 26.11.2012
Сообщений: 303
07.03.2016, 03:43
скиньте больше кода, я тут явной ошибки больше не вижу,
хотя можно и так попробовать)

PHP
1
2
3
4
5
6
7
8
9
10
11
12
$arr = array(); 
foreach ($records as $row)
        {
            $coordinates = array();             
            $coordinate = $mysqli->query("SELECT longitude, latitude FROM housing WHERE description='".$row['id_housing']."'");
                while ($kd = $coordinate->fetch_assoc())
                {
                    $coordinates[] = $kd;
                }
        $arr[] = $coordinates;
        }
                $a = json_encode($arr);
хотя, и так все в порядке вроде, или это ночь и я засыпаю)
1
7 / 7 / 5
Регистрация: 28.07.2014
Сообщений: 104
07.03.2016, 03:52  [ТС]
temkasky, теперь JSON выглядит так -
JSON
1
[[{"longitude":"55.830457","latitude":"37.554969"}],[{"longitude":"55.832995","latitude":"37.549956"}]]
Добавлено через 1 минуту
В браузере так же!) Это ведь хорошо?

Добавлено через 4 минуты
Может тогда завтра дообсудим, а то и правда уже ночь!?
0
81 / 81 / 50
Регистрация: 26.11.2012
Сообщений: 303
07.03.2016, 03:53
Закручено, но пойдет. Но теперь нужен еще 1 цикл для перебора.
Теперь у вас приходит массив из двух массивов в которых по одному обьекту
Я думаю промежуточный цикл вы и сами вставите)

Добавлено через 50 секунд
Можете скинуть весь код я посмотрю.завтра.
Доброй ночи!
0
7 / 7 / 5
Регистрация: 28.07.2014
Сообщений: 104
07.03.2016, 04:10  [ТС]
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
/*Использую API Яндекс карт для того чтобы вставить карту*/
<script src="https://api-maps.yandex.ru/2.1/?lang=ru_RU" type="text/javascript"></script>
        <script type="text/javascript">
            var myMap, myRoute;
                ymaps.ready(init);
            function init () {
                myMap = new ymaps.Map ("myMap", {
                    center: [55.830457, 37.554969], 
                    zoom: 15,
            behaviors: ['default', 'scrollZoom']
                                });
            myMap.controls.add('zoomControl');
            myMap.controls.add('typeSelector');
/*здесь создание метки на карте*/
                        var x = [], y = [];
                function parseObject(obj){
                    obj = JSON.parse(<?php echo $a;?>)
/*два цикла*/}
/*метка*/
var myPlacemark = new ymaps.Placemark([x, y],
                {iconContent:'TY', hintContent:'TA'},
                {iconImageHref:'img/picture.png', iconImageSize:[30,30], iconImageOffSet:[0,0]});
        myMap.geoObjects.add(myPlacemark);
};
Добавлено через 1 минуту
И Вам Доброй ночи!
0
Superposition
 Аватар для Padimanskas
950 / 615 / 256
Регистрация: 27.10.2013
Сообщений: 2,083
07.03.2016, 05:21
TampLieR,
PHP
1
2
3
4
header('Content-type: application/json; charset="UTF-8";');
...
$coordinate->fetch_all(MYSQLI_ASSOC);
echo json_encode($coordinate);
JavaScript
1
$.getJSON('path/to/ajax/coords.json', function(data){ ... });
0
7 / 7 / 5
Регистрация: 28.07.2014
Сообщений: 104
07.03.2016, 14:26  [ТС]
Padimanskas, извините, но я не понял

Добавлено через 7 минут
temkasky, Здравствуйте!)

Добавлено через 6 минут
temkasky,
Цитата Сообщение от temkasky Посмотреть сообщение
Я думаю промежуточный цикл вы и сами вставите)
Не знаю как найти obj.length как Вы использовали в цикле
Энтропию заменил на знак вопроса
JavaScript
1
2
3
4
5
6
7
8
9
10
11
                /*два цикла*/var x = [], y = [];
                function parseObject(obj){
                    obj = JSON.parse(<?php echo $a;?>);
                    for(var i = 0; i < obj.length; i++){
                        for (var j = 0; j < ?.length; j++)
                        {
                            x.push(?[i][j].longitude);
                            y.push(?[i][j].latitude);
                        }
                    }
                };
0
81 / 81 / 50
Регистрация: 26.11.2012
Сообщений: 303
07.03.2016, 14:40
как-то так
https://jsfiddle.net/xxtLL2La/1/
0
7 / 7 / 5
Регистрация: 28.07.2014
Сообщений: 104
07.03.2016, 16:04  [ТС]
temkasky, а может не создавать массивы x и y, Попробовал так
JavaScript
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
<script type="text/javascript">
    var myMap, myRoute;
        ymaps.ready(init);
    function init ()
    {
        myMap = new ymaps.Map ("myMap",
        {
            center: [55.830457, 37.554969], 
            zoom: 15,
            behaviors: ['default', 'scrollZoom']
        });
        myMap.controls.add('zoomControl');
        myMap.controls.add('typeSelector');
 
        function parseObject(obj)
        {
            obj = JSON.parse(<?php echo $a;?>);
            for(var i = 0; i < obj.length; i++){
                x = obj[i][0].longitude;
                y = obj[i][0].latitude;
                var myPlacemark = new ymaps.Placemark([x, y]);
                myMap.geoObjects.add(myPlacemark);
                x=0; y=0;
            }
        };              
    };
</script>
И так
JavaScript
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
<script type="text/javascript">
    var myMap, myRoute;
        ymaps.ready(init);
    function init ()
    {
        myMap = new ymaps.Map ("myMap",
        {
            center: [55.830457, 37.554969], 
            zoom: 15,
            behaviors: ['default', 'scrollZoom']
        });
        myMap.controls.add('zoomControl');
        myMap.controls.add('typeSelector');
 
        var x = [], y = [];
        function parseObject(obj)
        {
            obj = JSON.parse(<?php echo $a;?>);
            console.log(obj)
            for(var i = 0; i < obj.length; i++){
                x.push(obj[i][0].longitude);
                y.push(obj[i][0].latitude);
                for (var j = 0; j < x.length; j++)
                {
                    var myPlacemark = new ymaps.Placemark([x[j], y[j]]);
                    myMap.geoObjects.add(myPlacemark);
                }
            }
        };      
    };
</script>
Не получилось Может что то не так разбираем в JSON?
0
81 / 81 / 50
Регистрация: 26.11.2012
Сообщений: 303
07.03.2016, 16:28
Покажите код всего файла. Я не могу понять откуда вы запихиваете переменную а. Так делать нельзя
0
7 / 7 / 5
Регистрация: 28.07.2014
Сообщений: 104
07.03.2016, 16:41  [ТС]
Это index.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
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
97
<?php
    /*подключение к БД*/
    session_start();
    header('Content-type: text/html; charset=UTF-8');
    $mysqli = new mysqli('localhost','root','') or die('Error of connection to DB');
    $mysqli->select_db('first') or die('Can not select database');
    $mysqli->set_charset("utf8");
 
    define('IS_ADMIN', isset($_SESSION['IS_ADMIN']));
 
    $act = isset($_GET['act']) ? $_GET['act'] : 'list';
    
switch ($act) {
    case 'list':
        /*получили данные о заявке*/
        if (isset($_POST['statement'])) 
        {
        $surname = $_POST['surname'];
        $name = $_POST['name'];
        $middle_name = $_POST['middle_name'];
        $id_division = $_POST['id_division'];
        $id_housing = $_POST['id_housing'];
        $room = $_POST['room'];
        $descriptions_problem = $_POST['descriptions_problem'];
        $id_service = $_POST['id_service'];
        $id_system = $_POST['id_system'];
        $account = $_POST['account'];
        $phone = $_POST['phone'];
        $email = $_POST['email'];
        $time = $_POST['time'];
 
        /*запрос к БД - "Отправка данных в БД"*/
        $mysqli->query("INSERT INTO test VALUES (NULL,NULL,'$surname','$name','$middle_name','$id_division','$id_housing','$room','$descriptions_problem','$id_service','$id_system','$account','$phone','$email','$time',NULL,NULL,NULL,NULL)") or die('Error of sending data');
        $id = $mysqli->insert_id;
        }
        
        $records = array();
        $sel = $mysqli->query("SELECT * FROM test WHERE status<>'Выполнена' OR status IS NULL");
        while ($row = $sel->fetch_assoc()) {
            $records[] = $row;
        }
        /*создание массива с координатами для вывода его на карту*/
        foreach ($records as $row)
        {
            $coordinates = array();             
            $coordinate = $mysqli->query("SELECT longitude, latitude FROM housing WHERE description='".$row['id_housing']."'");
                while ($kd = $coordinate->fetch_assoc())
                {
                    $coordinates[] = $kd;
                }
            $arr[] = $coordinates;
        }
        $a = json_encode($arr);
        
        require("templates/list.php");
        break;
    case 'view-entry':
        require("templates/entry.php");
        break;
    case 'login':
        require("templates/login.php");
        break;
    case 'logout':
        unset($_SESSION['IS_ADMIN']);
        header ('Location: .');
        break;
    case 'do-login':
    /*Вход администратора*/
        $e_login = $_POST['login'];
        $e_password = md5($_POST['password']);
        /*запрос к БД - проверка по логину*/
        $query = "SELECT * FROM users WHERE login='$e_login'";
        $result = $mysqli->query($query);
        $user_data = $result->fetch_array(MYSQLI_ASSOC);
        $result->free();
        /*проверка по паролю*/
        if ($user_data['password'] == $e_password) {
            $_SESSION['IS_ADMIN'] = true;
            header('Location: .');
        }
        else {
            echo 'Не правильный логин или пароль';
            header('Location: ?act=login');
        }
        require("templates/.php");
        break;      
    default:
        die('No such action!');
}
    /*закрытие сессии*/
    if(isset($_POST['logout'])) {
        unset($_SESSION['name']);
        session_destroy();
    }
    /*закрываем подключение к БД*/
    $mysqli->close();
?>
Добавлено через 1 минуту
Это header.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
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
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
        <title>
            Управление информационных технологий
        </title>
    <script type="text/javascript" src="bootstrap/js/sorttable.js"></script>
    <link href="bootstrap/css/bootstrap.css" rel="stylesheet">
    <script src="bootstrap/js/jquery-1.12.0.js"></script>
    <script src="bootstrap/js/bootstrap.min.js"></script>
    <link href="bootstrap/css/style.css" rel="stylesheet">
    <script src="https://api-maps.yandex.ru/2.1/?lang=ru_RU" type="text/javascript"></script>
        <script type="text/javascript">
            var myMap, myRoute;
                ymaps.ready(init);
            function init ()
            {
                myMap = new ymaps.Map ("myMap",
                {
                    center: [55.830457, 37.554969], 
                    zoom: 15,
                    behaviors: ['default', 'scrollZoom']
                });
                myMap.controls.add('zoomControl');
                myMap.controls.add('typeSelector');
 
                /*var x = [], y = [];
                function parseObject(obj)
                {
                    obj = JSON.parse(<?php echo $a;?>);
                    console.log(obj)
                    for(var i = 0; i < obj.length; i++){
                        x.push(obj[i][0].longitude);
                        y.push(obj[i][0].latitude);
                        for (var j = 0; j < x.length; j++)
                        {
                            var myPlacemark = new ymaps.Placemark([x[j], y[j]]);
                            myMap.geoObjects.add(myPlacemark);
                        }
                    }
                };*/
                function parseObject(obj)
                {
                    obj = JSON.parse(<?php echo $a;?>);
                    for(var i = 0; i < obj.length; i++){
                        x = obj[i][0].longitude;
                        y = obj[i][0].latitude;
                        var myPlacemark = new ymaps.Placemark([x, y]);
                        myMap.geoObjects.add(myPlacemark);
                        x=0; y=0;
                    }
                };              
            };
        </script>
        <!--Функция свернуть/развернуть DIV-->
        <script type="text/javascript">
            function openDiv (id) {
            $(".openDiv").css({display:'none'});
            $('#'+id+'').toggle('normal');
            };
        </script>
        <!--Вращение кнопки на 360 https://www.cyberforum.ru/javascript-jquery/thread1180975.html-->
        <!--Смена кнопки верх-низ http://javascript.ru/forum/misc/1399-smena-kartinok-pri-nazhatii.html-->
        <script>
            function chg(id){
            el = null;
            var el = document.getElementById(id);
            if (el.src.indexOf("img/up.png")>0)
                {
                    el.src="img/down.png"
                }
            else
                {
                    el.src="img/up.png"
                }
            }
        </script>
</head>
Добавлено через 2 минуты
Файлы все равно сокращены и приведены не полностью, но у меня браузер видит строку <?php echo $a;?>
Вот так
JSON
1
[[{"longitude":"55.830457","latitude":"37.554969"}],[{"longitude":"55.832995","latitude":"37.549956"}]]
0
81 / 81 / 50
Регистрация: 26.11.2012
Сообщений: 303
07.03.2016, 17:04
Лучший ответ Сообщение было отмечено TampLieR как решение

Решение

вы функцию не вызываете, она же сама по себе не вызовется.
сделайте так

JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
function parseObject(obj)
                {
                    obj = JSON.parse(obj);
                    for(var i = 0; i < obj.length; i++){
                        x = obj[i][0].longitude;
                        y = obj[i][0].latitude;
                        var myPlacemark = new ymaps.Placemark([x, y]);
                        myMap.geoObjects.add(myPlacemark);
                        x=0; y=0;
                    }
                }; 
parseObject(<?php echo $a;?>)

Не по теме:

у вас такая каша)
html + js код в php файле. УЖАС!

1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
07.03.2016, 17:04
Помогаю со студенческими работами здесь

Правильное формирование базы
Здравствуйте, нужна помощь с созданием одной таблицы, описывающей посты на форуме. Структура такая(примерно): ID_post - код поста ...

Правильное формирование XML файла
Добрый вечер друзья помогите правильно сформировать XML файл. Написал метод который формирует XML ublic void SaverAgenda(string...

Правильное формирование данных в таблице
Добрый час Форумчане! Помогите с формированием данных в таблице. Я занимаюсь линиями ВЛ и хочу автоматизировать подсчёт...

Вывод по тексту и правильное формирование сайта
Вывод по тексту. Вообще сделал начало вывод по id, все нормально, но как сделать вывод по test, проблема в том, что если там предложение,...

Qt разбор JSON
все не могу разобраться в json, с vk возвращает это: &quot;{&quot;response&quot;:180075}&quot; мне нужно чтобы в лист вернуло информацию. ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Подключение Box2D v3 к SDL3 для Android: физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru