안녕하세요. 저는 안드로이드 앱 개발중인 학생입니다.

이번에 프로젝트를 팀으로 진행하면서 서버를 담당하게되었습니다.

 

ojdbc를 이용하여 자바 어플리케이션으로 연동을 성공했으나,

안드로이드 프로젝트에선 드라이버 로딩까지만 가능합니다.

DriverManager .getConnection(URL, USERNAME, PASSWORD); <ㅡ 이 부분에서 에러!

 

에러 이름은

SQLException: IO 예외 상황: The Network Adapter could not establish the connection

 

개발 환경과 버전들은

JDK 1.6

ojdbc14.jar(oracle 폴더에서 뽑음)

Oracle 10g R2 0.0.1

android 2.2 or 2.3.3

 

웃긴건, 루팅된 핸드폰에서만 Oracle과 연결됩니다.

AVD와 현재 사용중인 갤2(루팅X)에선 연결 불가능합니다.

 

2-Tier방식으로 간단하게만 연결하고 싶은데 방법이 없을까요?

 

 

ps.

리스너의 서비스 상태와 .ora 파일 전부 localhost가 아닌,  서버의 고정IP주소를 사용중입니다.

그리고 오라클 설치시에 Loopback adapter를 설정하지 않았습니다.

즉, 리스너는 떠있고 오라클도 시동중인 상태입니다.

 

 

답변 주신분들껜 죄송하지만.. 해결방법을 찾았습니다!!

루팅된 핸드폰에서 되는 것이 해답이었습니다.

안드로이드와 DB 연동은 네트워크를 사용하는 것이기 때문에

아래와 같이 네트워크 허가 여부를 AndroidManifest.xml에 명시해 주어야 합니다.

 

단! 2-Tier 방식은 권장사항이 아니기에

권장되는 3-Tier 방식을 사용해 주시길 바랍니다.

 

 

           ...

      <uses-permission android:name="android.permission.INTERNET" />   ←추가시켜 주세요.

</manifest>

 

출처 및 참고 - http://www.tipssoft.com/bulletin/tb.php/FAQ/930

                    팁스소프트 <script language="JavaScript"> function clipboard_trackback(str) { if (g4_is_gecko) prompt("이 글의 고유주소입니다. Ctrl+C를 눌러 복사하세요.", str); else if (g4_is_ie) { window.clipboardData.setData("Text", str); alert("트랙백 주소가 복사되었습니다.\n\nhttp://www.tipssoft.com/bulletin/tb.php/FAQ/930"); } } </script>