Android 中通过 Facebook API 上传本地文件
我正在尝试获取 Android Gallery 中本地图像文件的 URL。我尝试过类似
file:///mnt/sdcard/test.jpg
或类似的
content://media/external/images/media/1
格式,但没有一个有效。我只是想知道是否有人能给我一个格式正确的 Android 本地文件 URL 示例?我需要这个来在使用 Facebook api 签到时上传照片。非常感谢
I'm trying to get a URL of a local image file in Android Gallery. I've tried formats like
file:///mnt/sdcard/test.jpg
or like
content://media/external/images/media/1
but none of them works. I'm just wondering if anyone can give me a properly formatted Android local file URL example? I need this to upload photo while checking in using Facebook api. thank you very much
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
Facebook API 无法使用您的本地文件 URI,因为它无权访问您手机的内容。您需要使用 POST 请求来物理上传文件的内容。
Facebook API can't use your local file URI as it doesn't have access to the contents of your phone. You need to use a POST request to physically upload the contents of your file.
如果我没记错的话 UNIX 路径是这样的:
If I'm not mistaken UNIX paths go like this:
绝对路径
Environment.getExternalStorageDirectory().getAbsolutePath() 给出 SDCard 的绝对路径。
从这里“/DCIM/Camera/”将为您提供相机用于存储捕获的图像的文件夹的路径。
因此,您的文件路径将类似于
内容解析器路径
content://media/external/images/media/1 是内容解析器引用的路径。这就像
MediaStore.Images.Media.EXTERNAL_CONTENT_URI + Image Id
如果您获取了图像的 Uri,则可以使用以下方法获取与图像对应的位图。
沙什
Absolute Path
Environment.getExternalStorageDirectory().getAbsolutePath() gives to absolute path to SDCard.
From here "/DCIM/Camera/" would give you the path to folder used by Camera to store captured image.
So your file path would be something like this
Content Resolver Path
content://media/external/images/media/1 is the path referred by content resolver. This is like
MediaStore.Images.Media.EXTERNAL_CONTENT_URI + Image Id
If you get hold of Uri of the image then you can use the following to get bitmap correspondong to the image.
Shash