그래서 httpebble 라이브러리와 함께 here 이상의 자갈 SDK를 따르려고합니다.터플에서 JSON 배열 구문 분석
{"0":["Oz Lotto","Powerball","TattsLotto","Super 66","Monday & Wednesday Lotto","The Pools"],"1":["17, 26, 38, 7, 36, 45, 9 (44) (41)","15, 37, 32, 6, 24, 10 (11)","37, 12, 15, 16, 42, 45 (6) (9)","1, 8, 5, 8, 8, 5","16, 40, 44, 8, 24, 15 (39) (3)","5, 17, 20, 22, 27, 31 (16)"]}
main.c를 :
나중에 내 페블의 목록에 그들을 저장하기 위해 데이터를 추출 할 수 있도록하려는
DictionaryIterator* received
가정은 다음과 같은 JSON 페이로드를 포함 앱. 그래도 Tuple
이 어떻게 작동하는지 파악하는 데 어려움이 있습니다.
이것은 내가 실제로 lotto_names
과 lotto_numbers
중에서 값을 추출하는 방법을 모르겠다는 것을 제외하고는 지금까지 내가 가지고있는 것입니다.
void http_success(int32_t request_id, int http_status, DictionaryIterator* received, void* context) {
if (request_id != HTTP_COOKIE) {
return;
}
Tuple *lotto_names = dict_find(received, 0);
Tuple *lotto_numbers = dict_find(received, 1);
for (int i = 0; i < 5; i++) {
const char* lotto_name = lotto_names[i]; // ?
}
}
나는 또한
Pebble SDK forum에서 질문을 통해 요청했습니다. 그러나 아무도 내 게시물에 응답하지 않았습니다. 어떤 도움을 주시면 감사하겠습니다.
SDK를 살펴보면 JSON 툴처럼 보이지 않습니다. 데이터를 나타 내기 위해 사전에 숫자 키가 필요합니다. "0"과 "1"은 사전 키로 변환되고 값은 사전에 문자열로 저장됩니까? 아마도 JSON 라이브러리를 사용하는 것이 좋습니다. – ash
@ash : 좋은 질문입니다. [httpebble] (https://github.com/Katharine/httpebble-watch)이라는 라이브러리를 사용하고 있습니다. – fuzz
사전에 API에 표시되지 않지만 누락 될 수 있습니다. 다음은 JSON 참조를위한 훌륭한 사이트입니다 : http://json.org/. 여기 내가 사용했다고 생각하는 것들이 있습니다 : https://github.com/json-c/json-c/wiki. 과거에 사용하려고 시도한 일부 라이브러리는 인용 부호를 올바르게 처리하지 못했습니다. 희망이 도움이됩니다. – ash