پرش به محتوا

گرفتن آدرس واقعی تصاویر بیسیک فوراندروید

گرفتن آدرس تصاویر

وقتی با ContentChooser یه عکسی از گالری انتخاب میکنیم آدرسی که توی رویداد

[codesyntax lang=”vbnet”]

(Sub ContentChooser_Result (Success As Boolean, Dir As String, FileName As String

End Sub

[/codesyntax]

 

بهمون برمیگردونه همچین شکلی هست

[codesyntax lang=”vbnet”]

content://com.android.providers.media.documents/document/video%3A267481

[/codesyntax]

 

 این آدرس رو نمیتونیم مستقیما بعضی جاها استفاده کنیم.

 برای گرفتن آدرس واقعی تصویر مثل: file://sdcard/folder/img.jpg از تابع زیر استفاده کنید

[codesyntax lang=”vbnet”]

Sub GetPathFromContentResult(UriString As String) As String

If UriString.StartsWith(“/”) Then Return UriString ‘If the user used a file manager to choose the image

Dim Cursor1 As Cursor

Dim Uri1 As Uri

(“Dim Proj() As String = Array As String(“_data

Dim cr As ContentResolver

(“”)cr.Initialize

If UriString.StartsWith(“content://com.android.providers.media.documents”) Then

(“Dim i As Int = UriString.IndexOf(“%3A

(Dim id As String = UriString.SubString(i + 3

(“Uri1.Parse(“content://media/external/images/media

(“”,Cursor1 = cr.Query(Uri1, Proj, “_id = ?”), Array As String(id

Else

(Uri1.Parse(UriString

(“”, Cursor1 = cr.Query(Uri1, Proj, “”, Null

End If

Cursor1.Position = 0

Dim res As String

(“res = Cursor1.GetString(“_data

Cursor1.Close

Return res

End Sub

[/codesyntax]

 

  • استفاده در رویداد ContentChooser:

[codesyntax lang=”vbnet”]

(Sub ContentChooser_Result (Success As Boolean, Dir As String, FileName As String

((Log(  GetPathFromContentResult(FileName

End Sub

[/codesyntax]

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.