找到蓝牙收件箱

use*_*460 9 android bluetooth

我们的应用程序需要从外部硬件设备推送后从蓝牙收件箱中获取某些文件.有没有办法以编程方式找到蓝牙文件夹位置?在银河/mnt/sdcard/bluetooth上,它似乎是在欲望上/mnt/sdcard/downloads/bluetooth.

谢谢!

mfr*_*kli 1

据我所知,没有简单易行的方法可以通过 API 来完成此操作(尽管应该有!)

有两种可行的解决方案(取决于使用上下文;第一个似乎通常更好):

  1. 启动时,您的应用程序检查是否有SharedPreference(例如)“蓝牙位置”。如果没有找到,应用程序将搜索 (a) FS 或 (b) 以 /mnt/ 为根的 FS(可能 (b) 更好),直到找到满足以下条件的文件:

    • name.equals("bluetooth"), 和isDirectory().

然后它会保存路径,然后就可以了。或者(取决于上下文)你可以,

  1. 第一次连接外部设备时,它会发送一个带有长硬编码文件名的文件(例如greoermmvemoper190erjvw0j9e2.txt)。然后,您的应用程序会搜索 FS,直到找到具有此共享硬编码名称的文件,并保存该位置。

这些都远非完美,它们的可行性取决于您的环境。我想我会把它扔在那里。希望能帮助到你。