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
原始问题仍然存在。
答案 0 :(得分:0)
在docs中显示以下内容:
指定用户是否可以提供任意值。这允许 接受非文本值的输入。输入的用法示例 需要音频或图像。
因此,我相信,如果我正确地阅读了这篇文章,函数setAllowDataType
将在输入字段中添加允许的类型。因此,如果用户想添加gif,img等,则可以。默认情况下,我不认为用户可以添加此类项目。