2015-02-03 7 views
1

이것은 "가능한가요, 시도해야합니까?" 문제. JSON 데이터를 모든 페이지의 서버에서 가져 오는 매우 간단한 앱 만들기. 데이터는 매우 단순한 JSON이며 모든 페이지에서 거의 동일한 형식입니다.내부의 발리

{ 
"userid": "stringid", 
"name": "some-name", 
"description": "some description", 
"properties": { 
    "id": { 
     "badgeid": "stringid", 
     "type": "string" 
    }, 
    "name": { 
     "description": "Name of the product", 
     "type": "string" 
    } 
}, 
"required": [ 
    "id", 
    "name", 
    "price" 
] 

}

단지 데이터의 각 그룹에 대한 전체 발리 요청을 만들기 위해 나에게 낭비 보인다. 나는 함수를 만들고 URL과 같은 일반적인 것들을 전달함으로써 약간의 주위를 알아 들었다. 하지만, 나는 여전히 모든 하나의 활동에이 같은 기능을 가지고 있습니다. ...

제가 생각하기에 단지 "JSONObject GoGetJSON (String URL)"이라고 말하면서 JSONObject를 반환해야합니다. 이 전화 할 수 있습니다 ... JSONObject test = new GoGetJSON ("http://blah.com");

그럼 내가 원하는대로 테스트를 사용하십시오. 그런 다음 각 페이지에서 작업을 반복하는 대신 데이터 문자열 및 그 모든 다른 종소리와 휘파람의 암호화를 포함시킬 수 있습니다. 이것이 가능하다면 맞춤 정보 어댑터를 만들어서 모든 정보가 필요하지 않은 호출에서 발생할 수있는 "추가"데이터 일부를 필터링하거나 다시 채울 수 있습니다.

내 관심사는 이런 식으로, 본질적으로 비동기 작업 이점을 "깨뜨리고있다". 클래스를 기다리고 있기 때문에 발리 요청을 asyncing하고 있기 때문이다. 또한이 또한 요청 대기열을 깰 것인가?

지금은 OOP, Java 및 프로그래밍 전반을 배우고 있으므로 프로그래머가 더 많이 숙련 된 경험을 알고 싶습니다. 그것은 가치있는 벤처입니까? 아니면 잘못된 나무를 짖고 있습니까? 나는 그것이 작동하면 이식성의 이점을 볼 수있다 ... 나는 약간의 인터넷 검색을 시도했지만, 모든 예제에서는 각 요청마다 발리 슛을 직접 추가하고있다. 피드백과 도움에 감사드립니다!

답변

0

내 관심사는 이런 식으로, 본질적으로 비동기 작업 이점을 "깨고있다"는 것입니다. 클래스에서 대기 중이므로 발리 요청을 asyncing하고 있기 때문입니다. 또한이 또한 요청 대기열을 깰 것인가?

사용자는 특정 활동을 나가거나 조각을 전환 할 때 언제든지 요청을 취소 할 수 있습니다. 모든 요청은 대기열에 추가되며 발리 대기열이 모든 요청에 ​​대해 동일 할 경우 설계 방법과 상관없이 동일하게 작동합니다.

제 생각에는 네트워크 조회수를 한 곳에서 제어해야합니다. 그러면 훨씬 더 나은 삶을 누릴 수 있습니다.

참조 용으로이 사이트를 참조하십시오. http://www.michenux.net/android-volley-and-gson-tutorial-797.html