2016-07-04 5 views
0

のアップロード中にlogcatに誤差を与えることなく閉じほぼ100の画像サイズの各300キロバイトを言います。画像をアップロードしようとすると、15〜18枚程度の画像の一部がサーバーに同期されますが、アプリがクラッシュしたり、logcatにエラーが発生したりすることなく、アプリケーションが終了します。ハイブリッドアプリケーションは、私は、サーバーに多くの画像をアップロードしようとしていた画像

これはメモリの問題ですか?私は個々の画像で使用されるメモリを解放していないかもしれません。ここで

画像

function SyncImage(ImageName, TryCount) 
{ 
    var basicpath = localStorage.getItem('ImagePath'); 

    var Filename = Imagename; 
    var src = basicpath + Filename + "?" + new Date().getTime(); 
    // var src = "image.jpg"; 

    var myCanvas = document.createElement('canvas'); 
    var context = myCanvas.getContext('2d'); 

    var img1 = document.createElement('img'); 


    img1.onload = function() 
    { 
     var imgwidth = img1.width; 
     var imgheight = img1.height; 

     myCanvas.width = imgwidth; 
     myCanvas.height = imgheight; 

     context.drawImage(img1,10,10,imgwidth,imgheight); 
     //console.log("Image Ready"); 
     // alert("Image Ready"); 

     var myurl = myCanvas.toDataURL('image/jpeg'); 

     urlimage = Filename + myurl; 


     // console.log("contacting server"); 
     // alert("contacting server"); 

     var nRequest = new XMLHttpRequest(); 
     nRequest.open("POST", dbstatements.domain_address+"api/upload_image.php", true); 
     nRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); 
     nRequest.onreadystatechange = function (oEvent) 
     { 
      if (nRequest.readyState == 4) 
      { 
       if (nRequest.status == 200) 
       { 
        // console.log(Filename); 
        // alert("uploaded"); 
        return; 
       } 
       else 
       { 
        SyncImage(ImageName, Number(TryCount+1)); 
       } 
      } 
     }; 
     nRequest.send(urlimage); 


      img1.src = " "; 
      img1 = null; 

    } 

    img1.src = src; 

} 

を同期するための私のコードは、これは私のlogcat出力

07-05 17:28:13.317 12213-12213/com.example.ac046137.csm D/cr_Ime:  [InputMethodManagerWrapper.java:59] isActive: true 
07-05 17:28:13.318 12213-12213/com.example.ac046137.csm D/cr_Ime: [InputMethodManagerWrapper.java:68] hideSoftInputFromWindow 
07-05 17:28:19.010 12213-12213/com.example.ac046137.csm D/cr_Ime: [InputMethodManagerWrapper.java:42] restartInput 
07-05 17:28:19.014 12213-12213/com.example.ac046137.csm D/cr_Ime: [InputMethodManagerWrapper.java:50] showSoftInput 
07-05 17:28:19.027 12213-12213/com.example.ac046137.csm D/cr_Ime: [InputMethodManagerWrapper.java:77] updateSelection: SEL [0, 0], COM [-1, -1] 
07-05 17:28:19.085 12213-12213/com.example.ac046137.csm D/cr_Ime: [InputMethodManagerWrapper.java:89] updateCursorAnchorInfo 
07-05 17:28:19.732 12213-12213/com.example.ac046137.csm D/cr_Ime: [InputMethodManagerWrapper.java:89] updateCursorAnchorInfo 
07-05 17:28:53.402 12213-12213/com.example.ac046137.csm D/cr_Ime: [InputMethodManagerWrapper.java:77] updateSelection: SEL [3, 3], COM [-1, -1] 
07-05 17:28:53.448 12213-12213/com.example.ac046137.csm D/cr_Ime: [InputMethodManagerWrapper.java:89] updateCursorAnchorInfo 
07-05 17:28:53.513 12213-12213/com.example.ac046137.csm D/cr_Ime: [InputMethodManagerWrapper.java:77] updateSelection: SEL [3, 3], COM [0, 3] 
07-05 17:28:53.514 12213-12213/com.example.ac046137.csm D/cr_Ime: [InputMethodManagerWrapper.java:77] updateSelection: SEL [3, 3], COM [0, 3] 
07-05 17:28:53.549 12213-12213/com.example.ac046137.csm D/cr_Ime: [InputMethodManagerWrapper.java:89] updateCursorAnchorInfo 
07-05 17:28:53.806 12213-12213/com.example.ac046137.csm D/cr_Ime: [InputMethodManagerWrapper.java:42] restartInput 
07-05 17:28:53.810 12213-12213/com.example.ac046137.csm D/cr_Ime: [InputMethodManagerWrapper.java:77] updateSelection: SEL [3, 3], COM [-1, -1] 
07-05 17:28:53.811 12213-12213/com.example.ac046137.csm D/cr_Ime: [InputMethodManagerWrapper.java:77] updateSelection: SEL [3, 3], COM [-1, -1] 
07-05 17:28:53.814 12213-12213/com.example.ac046137.csm D/cr_Ime: [InputMethodManagerWrapper.java:89] updateCursorAnchorInfo 
07-05 17:28:53.849 12213-12213/com.example.ac046137.csm D/cr_Ime: [InputMethodManagerWrapper.java:42] restartInput 
07-05 17:28:53.861 12213-12213/com.example.ac046137.csm D/cr_Ime: [InputMethodManagerWrapper.java:42] restartInput 
07-05 17:28:53.865 12213-12213/com.example.ac046137.csm D/cr_Ime: [InputMethodManagerWrapper.java:50] showSoftInput 
07-05 17:28:53.868 12213-12213/com.example.ac046137.csm D/cr_Ime: [InputMethodManagerWrapper.java:77] updateSelection: SEL [0, 0], COM [-1, -1] 
07-05 17:28:53.869 12213-12213/com.example.ac046137.csm W/IInputConnectionWrapper: getTextBeforeCursor on inactive InputConnection 
07-05 17:28:53.878 12213-12213/com.example.ac046137.csm W/IInputConnectionWrapper: getTextBeforeCursor on inactive InputConnection 
07-05 17:28:53.880 12213-12213/com.example.ac046137.csm W/IInputConnectionWrapper: getTextBeforeCursor on inactive InputConnection 
07-05 17:28:53.937 12213-12213/com.example.ac046137.csm D/cr_Ime: [InputMethodManagerWrapper.java:89] updateCursorAnchorInfo 
07-05 17:28:54.197 12213-12213/com.example.ac046137.csm D/cr_Ime: [InputMethodManagerWrapper.java:89] updateCursorAnchorInfo 
07-05 17:28:54.851 12213-12213/com.example.ac046137.csm D/cr_Ime: [InputMethodManagerWrapper.java:77] updateSelection: SEL [1, 1], COM [-1, -1] 
07-05 17:28:54.916 12213-12213/com.example.ac046137.csm D/cr_Ime: [InputMethodManagerWrapper.java:89] updateCursorAnchorInfo 
07-05 17:28:55.209 12213-12213/com.example.ac046137.csm D/cr_Ime: [InputMethodManagerWrapper.java:77] updateSelection: SEL [2, 2], COM [-1, -1] 
07-05 17:28:55.263 12213-12213/com.example.ac046137.csm D/cr_Ime: [InputMethodManagerWrapper.java:89] updateCursorAnchorInfo 
07-05 17:28:55.628 12213-12213/com.example.ac046137.csm D/cr_Ime: [InputMethodManagerWrapper.java:77] updateSelection: SEL [3, 3], COM [-1, -1] 
07-05 17:28:55.668 12213-12213/com.example.ac046137.csm D/cr_Ime: [InputMethodManagerWrapper.java:89] updateCursorAnchorInfo 
07-05 17:28:56.135 12213-12213/com.example.ac046137.csm D/cr_Ime: [InputMethodManagerWrapper.java:59] isActive: true 
07-05 17:28:56.136 12213-12213/com.example.ac046137.csm D/cr_Ime: [InputMethodManagerWrapper.java:68] hideSoftInputFromWindow 
07-05 17:28:56.139 12213-12213/com.example.ac046137.csm D/cr_Ime: [InputMethodManagerWrapper.java:42] restartInput 
07-05 17:28:56.189 12213-12213/com.example.ac046137.csm W/cr_BindingManager: Cannot call determinedVisibility() - never saw a connection for the pid: 12213 
07-05 17:28:58.693 12213-12213/com.example.ac046137.csm W/cr_BindingManager: Cannot call determinedVisibility() - never saw a connection for the pid: 12213 
07-05 17:28:58.698 12213-12213/com.example.ac046137.csm D/cr_Ime: [InputMethodManagerWrapper.java:59] isActive: true 
07-05 17:28:58.698 12213-12213/com.example.ac046137.csm D/cr_Ime: [InputMethodManagerWrapper.java:68] hideSoftInputFromWindow 
07-05 17:29:30.407 12213-12213/com.example.ac046137.csm D/cr_Ime: [InputMethodManagerWrapper.java:59] isActive: true 
07-05 17:29:30.407 12213-12213/com.example.ac046137.csm D/cr_Ime: [InputMethodManagerWrapper.java:68] hideSoftInputFromWindow 
07-05 17:29:30.456 12213-12213/com.example.ac046137.csm D/cr_Ime: [InputMethodManagerWrapper.java:59] isActive: true 
07-05 17:29:30.457 12213-12213/com.example.ac046137.csm D/cr_Ime: [InputMethodManagerWrapper.java:68] hideSoftInputFromWindow 
07-05 17:29:31.383 12213-12213/com.example.ac046137.csm D/cr_Ime: [InputMethodManagerWrapper.java:59] isActive: true 
07-05 17:29:31.384 12213-12213/com.example.ac046137.csm D/cr_Ime: [InputMethodManagerWrapper.java:68] hideSoftInputFromWindow 

である何かアドバイスは大歓迎です。ありがとうございます

答えて

0

phonegap/cordovaエンジンを使用していますか?

ファイル転送プラグインを使用することをお勧めします。ネイティブコードによるアップロードがより効果的です。

webviewにはメモリが限られています。

+0

いいえ私はwebviewのみを使用します。私たちの要件は、私がphonegap/cordovaを使用できないようなものでした。この問題の解決策はありますか? – user6000866

+0

私はハイブリッドアプリケーションで作業しましたが、私はいつもこの問題(メモリ)を持っていました。ファイルを送信するためのネイティブコードを作成してみてください。 –

+0

各画像リクエストがサーバーに送信されると、私はwebviewのメモリをクリアすることができません。 – user6000866

関連する問題