UserDefinedFileAttributeView视图返回null,无法设置属性

时间:2019-07-26 19:48:30

标签: java android metadata nio user-defined

我正在尝试标记android设备上的文件,以便以后根据用户定义的标签(例如Category,Description,Owner)显示在列表中。 我已经为UserDefinedFileAttributes使用了广泛推荐的Java NIO代码

找到文件路径,并报告为有效,但是

final UserDefinedFileAttributeView view = getFileAttributeView (path, 
UserDefinedFileAttributeView.class); 

总是返回'view'= null

我想念什么?

也许不是所有平台/设备都支持UserDefinedFileAttributeView吗? 我已经在Nexus 6(API 28)的Android Studio模拟器上尝试了此代码

String MEDIA_PATH = Environment.getExternalStorageDirectory().getPath()
                   + File.separator + "myEMR" + File.separator + 
                    "Imported_Documents" ;
String uNewFileName = "MyFile";

public void setLocalFileAttributes() throws Exception {

    Path path = Paths.get(MEDIA_PATH, uNewFileName);

    final UserDefinedFileAttributeView view = getFileAttributeView(path, 
          UserDefinedFileAttributeView.class);

    // The file attribute
    final String category = "Category";
    final String value = "UnCategorised";


  final byte[] bytes = value.getBytes("UTF-8");
        final ByteBuffer writeBuffer = 
        ByteBuffer.allocate(bytes.length);
        writeBuffer.put(bytes);
        writeBuffer.flip();
        view.write(category, writeBuffer);

}

0 个答案:

没有答案