RSS 성능을 향상시키기 위해 RSS 피드를 SQLite 데이터베이스에 캐시하고 싶습니다.
저는 RSS 피드의 기본적인 내용, 즉 title
, description
, URL guid
및 pubDate
에만 관심이 있습니다. 현재로서는 처리하여 Vector<Feed>
에 저장할 수 있습니다. Feed
은 내 사용자 정의 클래스입니다.안드로이드에 RSS 피드를 저장하는 방법?
안드로이드에 초보자로 생각하는 몇 가지 사항이 있습니다. 나는 데이터베이스에 모든 피드를 추가 할 필요가 있음을 의미하는 0을 반환 할 테이블의 행 수를 받고, 첫 번째 실행에서
1. Cat Kills the Dog
2. Curosity Killed the Cat in Revenge
3. Y U NO leave Cat alone ?
:
내가 제목에 다음과 같습니다 피드 항목을 말해봐 . 아무 문제 없습니다.
피드가 업데이트 될 때 문제가 발생합니다. 여기에 업데이트 된 피드는 다음과 같습니다
*. Quick Brown Fox Jumps Over The Lazy Dog. Dog Dies.
1. Cat Kills the Dog
2. Curosity Killed the Cat in Revenge
3. Y U NO leave Cat alone ?
논리는 다음과 같습니다
1.이 RSS 피드를 구문 분석.
2. 새로 가져온 RSS 피드의 제목을 읽습니다.
3. 데이터베이스의 첫 번째 행 제목과 일치합니까?
3.1. 아니오, 구문 분석을 계속하고이 피드를 데이터베이스에 추가하십시오.
3.2. 예, 파싱을 중지하고이 피드를 데이터베이스에 추가하십시오.
문제는 RSS XML 피드에서와 같이 후속 비교가 쉬워 지도록 첫 행을 가져야하는 반면 테이블을 추가 한 행은 이제 마지막 행입니다.
피드 XML에서와 비슷한 행 순서를 유지해야합니다.
해당 주문을 어떻게 유지합니까?
피드를 구성하고 저장하는 더 좋은 방법이 있습니까?
'pubDate'는'Fri, 09 Aug 2013 22 : 46 : 12' 형식으로 제공됩니다. 직접 테이블에 저장합니까? –
분명히 SQLite는 날짜를 TEXT (http://www.sqlite.org/datatype3.html#datetime)로 저장합니다. 가장 쉬운 방법은'pubDate'를 INTEGER로 저장하고이를 UNIX epoch (http://stackoverflow.com/questions/6687433/convert-date-format-to-epoch)로 변환하는 것입니다. –
그리고'Feed' 객체로 변환 할 수 있도록 검색 할 때의 역 과정? :) –