为什么我无法在 Android 6 上自定义权限请求对话框?
Why I can not customize permission request dialog on Android 6?
最近,我在新 Android Marshmallow 上遇到了很多关于权限请求对话框的问题。它们听起来像:
如何自定义 Android 权限对话框?
如何向 Android 权限对话框提供自定义文本?
为什么我无法自定义 Android 权限对话框?
这里是所有这些问题的完整答案。
这里还有其他类似的问题:
首先,您不能对Android权限对话框进行任何自定义,因为它是system dialog:
When your app calls requestPermissions(), the system shows a standard dialog box to the user. Your app cannot configure or alter that dialog box. If you need to provide any information or explanation to the user, you should do that before you call requestPermissions(), as described in "Explain why the app needs permissions".
但是很多人问同一个问题 - 为什么?
答案很简单,因为你可以欺骗用户。我举个例子。
- 如果您想提供自己的对话框来获取权限,显然您可以向用户提供有关您需要的内容的不正确或误导性信息。
- 如果您只想为该对话框提供您自己的文本,您可以像上一项一样做同样的事情。但是你会问为什么我不能和系统一一起提供额外的信息?同样,因为您可以欺骗用户。您可以提供很长的文本,基本信息块可以超出屏幕范围,或者您可以通过自己的自定义视图找到父容器并将其隐藏。
- 如果您想通过系统
xml
样式设置此对话框的样式,您可以在白色背景上创建白色文本 e。 G。并再次欺骗用户。
并且只有那些变体会立即浮现在脑海中。很明显,任何干扰都可能被用来造成伤害。
最近,我在新 Android Marshmallow 上遇到了很多关于权限请求对话框的问题。它们听起来像:
如何自定义 Android 权限对话框?
如何向 Android 权限对话框提供自定义文本?
为什么我无法自定义 Android 权限对话框?
这里是所有这些问题的完整答案。
这里还有其他类似的问题:
首先,您不能对Android权限对话框进行任何自定义,因为它是system dialog:
When your app calls requestPermissions(), the system shows a standard dialog box to the user. Your app cannot configure or alter that dialog box. If you need to provide any information or explanation to the user, you should do that before you call requestPermissions(), as described in "Explain why the app needs permissions".
但是很多人问同一个问题 - 为什么?
答案很简单,因为你可以欺骗用户。我举个例子。
- 如果您想提供自己的对话框来获取权限,显然您可以向用户提供有关您需要的内容的不正确或误导性信息。
- 如果您只想为该对话框提供您自己的文本,您可以像上一项一样做同样的事情。但是你会问为什么我不能和系统一一起提供额外的信息?同样,因为您可以欺骗用户。您可以提供很长的文本,基本信息块可以超出屏幕范围,或者您可以通过自己的自定义视图找到父容器并将其隐藏。
- 如果您想通过系统
xml
样式设置此对话框的样式,您可以在白色背景上创建白色文本 e。 G。并再次欺骗用户。
并且只有那些变体会立即浮现在脑海中。很明显,任何干扰都可能被用来造成伤害。