OK. Ich ziehe mir die Haare aus. Ich verwende den folgenden Code, um einen FTP-Upload eines vom Benutzer ausgewählten Fotos zu erstellen.Lokalen Speicherpfad für ein Bild von "Inhalt:" basierend erhalten Uri
using (WebClient client = new WebClient())
{
client.Credentials = new NetworkCredential("[username]", "[password]");
client.UploadFile("XXXXXXXXXX" + destinationName, "STOR", sourceFile);
}
Dies ist eine Standard-.NET-Implementierung. Das Problem ist dann Quelldatei. Ich habe ein Click-Event, zusammen mit einem Return-Event von.
protected override void OnActivityResult(int requestCode, Result resultCode, Intent data)
{
if ((requestCode == PickImageId) && (resultCode == Result.Ok) && (data != null))
{
}
}
Hier ist das Problem, das mich verrückt macht. Ich benötige den physischen Pfad des ausgewählten Fotos, das vom OnActiveResult-Ereignis zurückgegeben wurde, damit das FTP ordnungsgemäß hochgeladen wird.
Ich habe es versucht;
Android.Net.Uri uri = data.Data;
physicalAddress = Convert.ToString(data.Data);
physicalAddress = Convert.ToString(uri);
Keines dieser Rückkehr der Pfad nur „Inhalt: \ android.provider.media \ Dokumente \ document \ image% 123.164“
diese Einstellung, wenn die Funktion oben vorgesehen, einen Fehler zurück als vorgesehen Quelldatei existiert nicht.
Haare herausziehen! bitte hilfe!
Mögliches Duplikat [android realen Weg erhalten, indem Uri.getPath()] (http://stackoverflow.com/questions/2789276/android-get-real-path-by-uri-getpath) – Gusman
I versuchte alles in diesem Thread .. Nichts scheint zu funktionieren .. – user3516183