2011-08-30 5 views
0

"Peter", "Jane", "Mary"등과 같이 하나의 문자열 형식으로 매개 변수를 수집하는 3 개 이상의 앱이 있습니다. in String[] 배열. 그러나 데이터를 많이 변경해야하므로 며칠마다 문자열을 수정하고 APK를 다시 컴파일하고 게시해야합니다. 시간의 허리 만.많이 변경되는 원격 데이터를 얻는 가장 좋은 방법

이 데이터를 원격 파일 (데이터베이스가 아님), 즉 텍스트 파일로 유지하는 가장 간단한 방법은 응용 프로그램이 필요로하는 매개 변수 목록을 다운로드 할 수 있도록하는 것입니다. 내 생각은이 파일을 한 번만 변경하고 일부 원격 서버에 업로드 한 다음 응용 프로그램에서 매개 변수를 자동으로 다운로드하는 것입니다. 이렇게하면 APK를 다시 컴파일하고 다시 게시 할 필요가 없습니다.

텍스트 파일이 가장 간단한 해결책 인 경우 그 형식이 무엇입니까? 예를 들어,이

피터, 제인, 메리와 같은 매개 변수를 ... 작성해야

또는 다른 형태의

?

원격 서버의 레이어를 데이터베이스에서 가져올 때처럼이 텍스트 파일과 Android 앱 사이에 어떤 레이어가 필요합니까? 아니면이 원격 텍스트 파일에서 직접 데이터를 가져올 수 있습니까?!

답변

2

전달 메커니즘은 앱이 제어하는 ​​웹 서버에서 수행하는 간단한 HTTP GET 일 수 있습니다. http://myhost/names.txt처럼 간단 할 수 있습니다.

데이터 형식은 원하는 작업에 따라 다릅니다. 슈퍼 간단한 솔루션은 각 라인에 다른 이름으로 텍스트 파일 다음과 같습니다

Peter 
Jane 
Mary 

또는, 당신은 서버에서 JSON을 제공하고 클라이언트에서 구문 분석 할 수있다.

{ "names": [ "Peter", "Jane", "Mary" ] } 

json으로 솔루션은 예를 들어, 미래에 더 많은 값을 추가하고자한다, 더 확장 될 것이다 :

{ "names": [ "Peter", "Jane", "Mary" ], 
    "lastnames": [ "Smith", "Johnston", "Cumberbatch" ] } 

정말 전적으로 의존 당신이 편안하고있어 어떤 상황이 요구 .

+0

또한 응용 프로그램이 업데이트 될 때만이 파일을 다운로드 할 수 있도록 데이터 버전을 추가하는 방법으로 웹 서비스를 가질 수 있습니다. 또는 [C2DM] (http://code.google.com/android/c2dm/)을 구현하여 원격 소스의 데이터를 업데이트 할 때 클라이언트에게 알릴 수 있습니다. – Audrius

관련 문제