안녕하세요. 저는 안드로이드 앱 개발중인 학생입니다.
이번에 프로젝트를 팀으로 진행하면서 서버를 담당하게되었습니다.
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>




우선 제가 알고있는건 오라클은 안드로이드 단말 접속을 지원하지 않는걸로 알고있습니다.
하지만 루팅된 핸드폰에서 된다고 하시니; 쫌더 알아봐야겟네요 ㅎㅎ;;
무튼 그리하여 저는 오라클 서버와 안드로이드 단말 사이에 웹서버를 미들웨어로 구축하여
안드로이드는 http 통신으로 xml 을 웹서로 부터 받아오겠금 설계하고,
웹서버는 오라클 db에 접속하여 데이터들을 xml파일로 만들어서 안드로이드 단말에서
오라클 접속이 가능하도록 설계하였습니다~
ㅎㅎ;; 도움이 되셧길 바랍니다.