2012-07-06 15 views
8

Vorrei scaricare un file da un server diSharepoint che proteggeva con NTLM autenticazione dal mio Android applicazione. Ho trovato alcuni tutorial e non ho potuto avere successo.Android: download di un file NTLM-autenticazione protetto

Ho provato ad utilizzare The Java CIFS Client Library e non ha fatto ancora una volta di successo.

Ho studiato questo post: Manipulating SharePoint list items with Android (JAVA) and NTLM Authentication ma non voglio consumare un webservice, voglio solo scaricare un file.

Qualche suggerimento?

+0

Come pensate di comunicare con SharePoint senza l'utilizzo di un servizio Web? In caso contrario, sarà necessario impostare una sorta di pagina Web in cui è possibile ottenere un array di byte indietro inviando le informazioni richieste come nome utente, password e nome file da querystring - sarebbe? –

+0

Ho un url del file come questo: http://sub.domain.com//FolderName/FileName.docx e voglio scaricare e file di visualizzazione per l'utente. Quando l'ho provato in un browser, mi ha chiesto un nome utente e una password e poi ho scaricato il file. – OguzOzkeroglu

+0

Sto facendo la stessa cosa, sono riuscito a connettersi a Sharepoint e per ottenere flusso di file, ma come hai fatto a visualizzare il file per l'utente? – Gaby

risposta

3

Hai usato Java standard java.net.Authenticatorhttp://developer.android.com/reference/java/net/Authenticator.html? Se non supporta NTLM, verificare http://developer.android.com/reference/org/apache/http/auth/NTCredentials.html e il relativo pacchetto org.apache.http. Guarda anche il blog http://mrrask.wordpress.com/2009/08/21/android-authenticating-via-ntlm/ dove viene mostrato come usarlo. In par

+0

Sì, li ho provati tutti ma non funzionano per me. – OguzOzkeroglu

+0

Quindi scrivi cosa c'è che non va. –

+0

Non ho potuto implementarli. Restituito: 401 UNAUTHORIZED – OguzOzkeroglu

3

Perché complicare le cose

si dovrebbe essere in grado di inviare l'autenticazione nel Uri.

URL url = new URL ("http://user:[email protected]/FolderName/FileName.docx"); 

Questa tecnica dovrebbe funzionare sia con autenticazione di Windows e autenticazione di base

+0

401 NON AUTORIZZATO – OguzOzkeroglu

+0

Utilizzare un account che funzioni. Testato su 5 (!) Diversi server SharePoint qui e funziona ovunque. –

+0

Il server può essere configurato per accettare solo determinati protocolli di autenticazione. Nei casi che funzionano, forse l'amministratore lo ha impostato per funzionare con QUALSIASI autenticazione (inclusa l'autenticazione HTTP di base, non solo NTLM). – hopia

0

Prova utilizzando Chilkat, anche se non è gratuito. ma puoi facilmente implementarlo nel tuo codice.

Chilkat Link