当我启动应用程序时,我的应用程序将从以下路径 (store/home/user/sample.db) 搜索数据库文件。如果我的黑莓设备连接到计算机,并且当时我启动我的应用程序,它无法找到路径并读取数据库(无法访问路径)。
在上述情况下,我想检查媒体存储是否可访问;如果不是,我需要显示警告消息。是否有任何可用的黑莓 API 来检查这种情况?
注意: 我知道我们可以在设备 -> 选项 -> 设备-> 存储中更改媒体存储选项,但我不想更改此设置。
当我启动应用程序时,我的应用程序将从以下路径 (store/home/user/sample.db) 搜索数据库文件。如果我的黑莓设备连接到计算机,并且当时我启动我的应用程序,它无法找到路径并读取数据库(无法访问路径)。
在上述情况下,我想检查媒体存储是否可访问;如果不是,我需要显示警告消息。是否有任何可用的黑莓 API 来检查这种情况?
注意: 我知道我们可以在设备 -> 选项 -> 设备-> 存储中更改媒体存储选项,但我不想更改此设置。
如果您只是想检测设备是否通过 USB 电缆连接,那么我认为您可以使用
USBPort.getConnectionState()
你应该检查状态
SystemListener2.USB_STATE_CABLE_DISCONNECTED
在您的情况下,我认为您需要检查根“存储”是否可用,您可以使用如下代码执行此操作:
boolean avail = false;
Enumeration drives = FileSystemRegistry.listRoots();
while(drives.hasMoreElements()) {
String root = (String) drives.nextElement();
System.out.print("Supported File System Root = " + root);
if(root.equalsIgnoreCase("store/")) {
avail = true;
break;
}
}
您需要验证,当您将设备连接到计算机时,选择仅充电选项,否则计算机会挂载媒体存储,并且设备无法访问。