如果代码未被使用,android 中是否可能不要求 Manifest.xml 文件中提到的权限?

Is it possible in android that don't ask for permissions mentioned in Manifest.xml file, if code is not in use?

我提到了以下权限:

<uses-permission android:name="android.permission.NFC" />

在我的 manifest.xml 中。但是 NFC 代码不再使用,我对源代码进行了注释。意味着 NFC 不再用于我的应用程序,但在安装应用程序时,它仍然显示在安装 window 中。 那么,如果未使用代码,是否有可能在 android 中不要求 Manifest.xml 文件中提到的权限?谢谢

不,这是不可能的,因为 Android 系统在 运行 之前不知道您的应用程序需要哪些权限。想象以下场景:

您正在编写一个应用程序,没有指定 NFC 权限,因为您没有在您的代码中使用它,但是您使用的框架在 50% 的实现中确实使用 NFC(设备制造商特定框架)。

Android系统无法判断是否需要 NFC 权限,因此它依赖于您对权限的明确说明

我相信您已经注意到,如果指定操作的权限不存在,则会引发异常

确保该要求消失的唯一方法是从清单中删除许可(坦率地说,这很重要吗?)

除了注释掉不必要的代码外,您还必须从 manifest 中删除 权限