2013-07-08 10 views
8

Ho problema (in realtà non uno, ma un sacco di problemi),BackgroundTransferService/Richiesta

sto sviluppando Windows Phone 8 App che utilizzano BackgroundTransferService per il trasferimento di file registrato wav, su HTC 8S lavorare quasi bene , ma su Nokia Lumia 920 sembra strano comportamento, ha qualche limite di upload non comprensibile pari a 0,5 MB esattamente 512 KB, con WiFi sembra funzionare bene, ma questo problema è su cellulare.

var transferRequest = new BackgroundTransferRequest(new Uri(url, UriKind.Absolute)); 
transferRequest.Tag = DateTime.Now.ToString(CultureInfo.InvariantCulture); 
transferRequest.Method = "POST"; 
transferRequest.UploadLocation = new Uri(defect.VoiceRecordFileName, UriKind.Relative); 
transferRequest.TransferPreferences = TransferPreferences.AllowCellularAndBattery; 

transferRequest.Headers.Add("Content-Type", "audio/wav"); 

transferRequest.TransferStatusChanged += new EventHandler<BackgroundTransferEventArgs>(transferRequest_TransferStatusChanged); 
transferRequest.TransferProgressChanged += new EventHandler<BackgroundTransferEventArgs>(transferRequest_TransferProgressChanged); 

BackgroundTransferService.Add(transferRequest); 

quando raggiungo TotalBytesSent = 512KB smettere di caricare

ho controllare anche questo

var tmp = NetworkInformation.GetInternetConnectionProfile(); 
var cost = tmp.GetConnectionCost(); 
var type = cost.NetworkCostType; 

e tutto sembra in

EDIT:

su server- lato è reddito solo 380000 byte +/- 5 KB

E a volte, dopo 10 avvii falliti (quando si inviano solo 380KB, ecc.) Di caricare il file, viene caricato improvvisamente: D. A volte, quando non sono in ufficio, funziona perfettamente alla prima volta e altre volte non lo invia mai.

sua cosa del tutto imprevedibile

SOLUZIONE:

Il problema era sul lato server ... Ho avuto gestore generico per il salvataggio di questo file senza il supporto di intestazioni Gamma (credo). Quando cambio il mio progetto in "Asp.NET Web Api Project" ispirato/copiato da this tutorial

La sua non funziona ieri, ma oggi inizia inaspettatamente a funzionare: D Crazy Nokia e .NET.

Vedremo domani cosa succederà dopo.

+0

Nel caso, sei sicuro che sia 0,5 MB e non 5 MB? Perché 5 MB è il limite di trasferimento sulla rete cellulare –

+0

Sì esattamente 0,5 MB, so circa il limite di 5 MB e regolare il limite sulla dimensione del record. Quando eseguo il debug, vedo in "transferRequest_TransferProgressChanged" che raggiungo il limite massimo. 0,5 MB nella proprietà di richiesta "request.BytesSent" e non capisco perché :). Domani proverò a contattare qualche evangelista Nokia o MS per aiutare. – lukasChudy

+0

il limite di trasferimento di 50 MB su cellulare e non 5 MB. –

risposta

0

Come affermato dal IukasChudy la soluzione al suo problema è

Il problema era sul lato server ... Ho avuto gestore generico per il salvataggio di questo file senza il supporto di intestazioni Gamma (credo). Quando cambio il mio progetto in "Asp.NET Web Api Project" ispirato/copiato da questo tutorial

La sua non funziona ieri, ma oggi inizia inaspettatamente a funzionare : D Crazy Nokia e .NET.

Vedremo domani cosa succederà dopo.

P.S. Non mi piace scrivere una risposta con il contenuto degli altri, ma odio le domande senza risposta che sono già state risolte.