2016-10-13 1 views
0

아래 JSON에서 볼 수 있듯이 전 세계의 모든 국가를 대표하고 싶습니다. Firebase 비 직렬화의 경우, Germany.java, Italy.java과 같은 클래스를 만들기 시작했지만, 그때 저를 때렸습니다. 메모리와 리소스 사용에 관해서는 249 클래스를 작성해야하고, 안드로이드에서 이것을 수행하는 가장 좋은 방법은 무엇입니까? 물론 나는 그때 그때를 초기화하지 않을 것이다.Android에서 전 세계 모든 국가를 대표하는 가장 좋은 방법은 무엇입니까?

어쩌면 Firebase가이 작업을 수행 할 수 있다고 생각 했었지만 비용을 지불해야합니다. 사용자 기기가 사용자가 필요로하는 국가를 다운로드 할 수 있다고 생각했으나 일부 ​​비용이 발생할 수 있습니다.

"LK": { 
    "name": "Sri Lanka" 
    }, 
    "SD": { 
    "name": "Sudan" 
    }, 
    "SR": { 
    "name": "Suriname" 
    }, 
    "SJ": { 
    "name": "Svalbard and Jan Mayen" 
    }, 
    "SZ": { 
    "name": "Swaziland" 
    }, 
    "SE": { 
    "name": "Sweden", 
    "ADMINISTRATIVE_AREA_LEVEL_1": { 
     "Stockholms län": { 
     "LOCALITY": { 
      "Stockholm": { 
      "STREET_ADDRESS": { 
       "Björngatan 36": { 
       "id": "KQqv0SYDBP_DMTtJupC", 
       "path": "SE/ADMINISTRATIVE_AREA_LEVE...", 
       "somekey": ".....", 
       } 
      } 
      } 
     } 
     } 
    } 
    }, 
+0

등 분야'code' (LK, SD, SR 하나 개의 클래스'Country'를 만듭니다)와'name'을 호출 한 다음 json을이 클래스로 파싱합니다. – mol

+0

잘 모르겠다. Btw,'administrative_area_level_1/Stockholms län/locality..' 경로는 아마도 국가의 절반 정도만 다를 수 있습니다. 일본과 마찬가지로'administrative_area_level'이 많이 있습니다 –

+0

왜 각국마다 별도의 수업이 필요합니까? 모든 나라는 동일하거나 유사한 분야를 가지고 있으며 모두 같은 계층에 속합니다 - 국가. 클래스 이름을 국가 이름으로 지정하지 말고 'name'이라는 필드를 만들고 국가 이름을 작성하십시오. – mol

답변

0

모든 공통 속성과 함께 'Country.java'라는 클래스가 있어야합니다. 이것은 여러 가지 시나리오에 대해 동일한 특성을 활용할 수 Country.java

public class Country 
{ 
    String Name; 
    String Code; 
} 

관련 문제