마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

안드로이드 local sqlite db를 webview에서 사용하려고 합니다.

0 추천

살려주세요 ㅠㅠ

지금 안드로이드에서 제공하는 sqlite를 통해서 db를 생성하고 데이터를 입력하는 것 까지는 완벽하게 구현 하였습니다.

ddms에서 db파일을 뽑아내서 확인도 하였구요.. 근데 문제는 webview에서도 안드로이드에서 sqlite로 작성한 db에 접근

하여서 동일한 db를 긁어오려고 하려고 합니다... 근데 이게 어찌된 일인지 열심히 구글링도 해보고 여기저기 알아봐서

코딩을 했지만 정작 webview에서는 긁어오지를 못하네요 ㅠㅠ

소스파일 간단하게 올리겠습니다.

 

--MainActivity 부분--

 WebView myWebView = (WebView)findViewById(R.id.webview);
  
   WebSettings setting = myWebView.getSettings();
  
   setting.setJavaScriptEnabled(true);
   setting.setJavaScriptCanOpenWindowsAutomatically(true);
   setting.setDatabaseEnabled(true);
   setting.setDatabasePath("/data/data/com.example.db_t/databases");

// setting.setDatabasePath("/data/data/com.example.db_t/databases/tb_sample");
   setting.setDomStorageEnabled(true);
  
   myWebView.loadUrl("file:///android_asset/www/test.html");

loadUrl부분을 중간에도 넣어보고 했는데도 안되고, 주석처리 한 것 처럼 path명에 db이름을 입력해주어도 안되네요 ㅠ

-------------------------------------------------------------------------------------------------------------

assets/www/index.html 부분 ---

<!DOCTYPE html>
 <html>
   <head>   
    <script type="text/JavaScript">
    
      var db;
       function createDB(){
         db = window.openDatabase("tb_sample","1", "테스트용DB", 1024*1024);
       }
      
      function createTable(){
         db.transaction(function(tx){
           tx.executeSql("create table Test(id,name)");
         });
       }
      
      function insertData(){
         db.transaction(function(tx){
           tx.executeSql("insert into Test values(?,?)",[txtID.value,txtName.value]);
         });
       }
      
      function selectData(){
         db.transaction(function(tx){
           tx.executeSql("select * from Test",[],
            
            function(tx,result){           
              for(var i = 0; i < result.rows.length; i++){
                 var row = result.rows.item(i);
                 document.getElementById('table1').innerHTML +=  "<tr><td>" + row['id'] + row['name']+"</td></tr>";
               }           
                                  
            });
            
        });
       }
            
    </script>
   </head>

 

==========================================

 

아 정말... 머리가 다 빠질정도로 스트레스가 미치것네요 ㅠ 안드로이드.. 쉬우면서 참.. 어렵네요

 

 

독다이 (120 포인트) 님이 2013년 5월 25일 질문
독다이님이 2013년 5월 26일 태그 변경

답변 달기

· 글에 소스 코드 보기 좋게 넣는 법
· 질문에 대해 추가적인 질문이나 의견이 있으면 답변이 아니라 댓글로 달아주시기 바랍니다.
표시할 이름 (옵션):
개인정보: 당신의 이메일은 이 알림을 보내는데만 사용됩니다.
스팸 차단 검사:
스팸 검사를 다시 받지 않으려면 로그인하거나 혹은 가입 하세요.
...