RemoteInput上的AllowedDataTypes是什么?

时间:2017-12-08 21:08:44

标签: android notifications android-notifications remote-input

API 26中的RemoteInput.Builder上有一个名为setAllowDataType的新功能。这用于什么?我尝试了以下方法:

val remoteInput = RemoteInput.Builder(KEY_TEXT_REPLY)
            .setLabel("Image")
            .setAllowFreeFormInput(false)
            .setChoices(null)
            .setAllowDataType("image/*", true)
            .setAllowDataType("image/png", true)
            .setAllowDataType("image/jpg", true)
            .setAllowDataType("image/gif", true)
            .build()

应在true上将isDataOnly设置为RemoteInput,但通知在手机上显示如下。单击Image按钮不会执行任何操作。这个是来做什么的?我无法找到有关此功能的任何文档,发行说明或教程。

更新

实际发布时,通知中似乎缺少仅数据类型。查看构建器代码,在向通知添加Actions时,它会使用级别24来完全删除数据类型:https://android.googlesource.com/platform/frameworks/support/+/oreo-release/compat/api26/android/support/v4/app/NotificationCompatApi26.java#108

原始问题仍然存在。

1 个答案:

答案 0 :(得分:0)

docs中显示以下内容:

指定用户是否可以提供任意值。这允许 接受非文本值的输入。输入的用法示例 需要音频或图像。

因此,我相信,如果我正确地阅读了这篇文章,函数setAllowDataType将在输入字段中添加允许的类型。因此,如果用户想添加gif,img等,则可以。默认情况下,我不认为用户可以添加此类项目。