2010-08-16 9 views
12

현재 안드로이드 장치의 로컬 sqlite 데이터베이스에 데이터를 저장하는 필드 서비스 응용 프로그램을 개발 중입니다. 어떤 시점에서, 일반적으로 데이터 수집 라운드를 마친 후 로컬 sqlite db는 서버의 원격 SQL Server db와 동기화되어야하며 SQL Server db에서 일부 로컬 테이블을 업데이트해야합니다.android에서 SQL 서버에 연결

해결 방법으로 해결할 수있는 방법에 대한 제안이 있으십니까? 또는 더 나은 경우, 그러한 응용 프로그램에서 데이터를 동기화하는 대안이 있습니까?

+0

심지어 같은 프로젝트를하고 있는데 코드가 작동하는지 알 수 있습니다. – VenomVendor

답변

18

저는 웹 서비스 나 자신의 TCP 기반 논리 계층을 사용하여 SQL 서버에 연결하고 응용 프로그램 요청을 실행하는 응용 프로그램에 가장 적합하다고 생각합니다. Android에서 직접 SQL 서버에 연결하지 마십시오. 서버 (또는 웹 서비스)에 백엔드 코드를 작성한 다음 Http를 사용하여 Android 디바이스에서 해당 코드 메소드를 호출 할 수 있습니다.

그리고 또한 같은 유래 많은 테마가 있습니다 : 웹 서비스를 작성하는 방법에 대한

. 큰 문제입니다. 기술을 선택해야합니다. 웹 서비스를 작성하는 데 도움이되는 라이브러리, 프레임 워크 및 플랫폼이 많이 있습니다. 의사 소통 프로토콜을 선택해야합니다, 그것은 SOAP, WSDL이거나 아마도 호출 프로 시저를 제거 할 수 있습니다. 웹 서비스는

당신은 읽기에서 시작할 수

무엇 :

당신은 자바 스택을 사용하는 경우, 순간에 몇 가지 인기있는 프레임 워크가있다

또한 안드로이드에서 웹 서비스에 액세스의 예를 제공하는 몇 가지 링크 :

+1

OP가 찾고있는 것이 확실하지 않지만 비슷한 프로젝트를 설계하는 방법에 대한 조언이 필요했습니다. 내가 SOAP을 사용하여 시도했지만 안드로이드 프레임 워크에서 작동하도록 XML 구문 분석을 할 수 없습니까? 사용하려고 시도한 모든 라이브러리는 다루기 힘들거나 가져올 수없는 것에 의존했습니다. – Yamikuronue

+0

@ Yamikuronue IMHO SOAP가 너무 느립니다. 저는 성공적으로 안드로이드 SQLite에서 [Apache Thrift] (http://thrift.apache.org/)를 사용하고 있습니다 <-> PostgreSQL 원격 DB 동기화 프로젝트와 매력처럼 작동합니다. – m0skit0

0

당신은 중간 계층 온라인 서버를 유지해야합니다. 어떤 응용 프로그램과 MSSQL db 사이에서 이리저리 통신 할 수 있습니다. 서블릿 또는 동기화되는 요청 처리기 일 수 있습니다. SQLite 및 SQL Server db 트윈.

0

보안이 강화 된 3 계층 아키텍처를 사용하는 가상 JDBC 드라이버를 사용하는 것이 더 쉽습니다. JDBC 코드는 HTTP를 통해 JDBC 코드 (구성 & 보안)를 전달하기 전에 필터링하는 원격 Servlet으로 전송됩니다 MySql JDBC 드라이버. 결과는 HTTP를 통해 다시 전송됩니다.

이 기술을 사용하는 일부 무료 소프트웨어가 있습니다. 그냥 구글 "HTTP를 통한 안드로이드 JDBC 드라이버".