2014-07-18 31 views
-4

最近我開發了一個iOS應用程序,在模擬器上測試。 De app記錄音頻,我想將錄製的音頻存儲在Web服務器上。由於我在模擬器上測試應用程序,我想將錄製的音頻存儲在本地主機服務器上。我有一個PHP網頁,它有一個表單,用於在處理post方法的同一頁面上載文件和腳本。我使用該本地網頁URL將文件從仿真器傳輸到本地主機服務器。我也使用了文件傳輸插件並將其註冊到config.xml中。到目前爲止它不工作。所以我的第一個問題是:是否可以將記錄的音頻從模擬器傳輸到本地主機服務器?或者我需要從iOS設備測試它到真正的共享主機服務器?謝謝!iOS模擬器錄製的音頻存儲在本地主機上

的javascript:與表單處理程序

var fileURL = "myrecording.wav"; 
var uri = encodeURI("http://www.localhost.dev/site/test/index.php"); 

var options = new FileUploadOptions(); 
options.fileKey="file"; 
options.fileName=fileURL.substr(fileURL.lastIndexOf('/')+1); 
//options.fileName="file"; 
//options.mimeType="text/plain"; 

var headers={'headerParam':'headerValue'}; 

options.headers = headers; 

var ft = new FileTransfer(); 
ft.onprogress = function(progressEvent) { 
    if (progressEvent.lengthComputable) { 
     loadingStatus.setPercentage(progressEvent.loaded/progressEvent.total); 
    } else { 
     loadingStatus.increment(); 
    } 
}; 

ft.upload(fileURL, uri, win, fail, options); 

function win(r) { 
    alert("Code = " + r.responseCode + " Response = " + r.response + " Sent = " + r.bytesSent); 
} 

function fail(error) { 
    alert("An error has occurred: Code = " + error.code + ", upload error source " + error.source + ", upload error target " + error.target); 
} 

PHP腳本http://www.localhost.dev/site/test/index.php

<?php 
    if($_SERVER['REQUEST_METHOD'] == 'POST'): 
    if ($_FILES["file"]["error"] > 0) { 
     echo "Error: " . $_FILES["file"]["error"] . "<br>"; 
    } else { 
     echo "Upload: " . $_FILES["file"]["name"] . "<br>"; 
     echo "Type: " . $_FILES["file"]["type"] . "<br>"; 
     echo "Size: " . ($_FILES["file"]["size"]/1024) . " kB<br>"; 
     echo "Stored in: " . $_FILES["file"]["tmp_name"] . " <br>"; 

     move_uploaded_file($_FILES["file"]["tmp_name"], 
     "upload/" . $_FILES["file"]["name"]); 
     echo "Stored in: " . "upload/" . $_FILES["file"]["name"]; 
    } 
    endif; 
?> 
+1

您將需要iOS設備上傳到您的服務器(本地/任何其他)。 –

+0

意味着我需要在iOS設備上測試它,而不是在本地模擬器上測試它? –

回答

0

你並不需要一個真正的共享託管服務器或用於測試的iOS設備,只要你管理設置您想在您的測試機器上正確使用的服務。如果表單在你的mac上使用127.0.0.1/,它將在模擬器中工作。嘗試使用Safari訪問模擬器中的頁面。

相關問題