我刚注意到,如果未设置targetSDKVersion
值(当您在项目设置中选择目标框架是SDK版本时会发生这种情况),则调用requestPermissions
ALRES将返回已授予的权限。
此处还提到了此行为:checkSelfPermission() doesn't seem to work for WRITE_EXTERNAL_STORAGE
因此,我开始认为一个好的做法是设置targetSDKVersion
。这是对的吗?
答案 0 :(得分:0)
正如Android开发人员提供的文档所述targetSDKVersion
:
指定应用程序所针对的API级别的整数。如果未设置,则默认值等于给予minSdkVersion的值。 此属性通知系统您已针对目标版本进行了测试,系统不应启用任何兼容性行为来维持应用程序与目标版本的向前兼容性。该应用程序仍然可以在旧版本上运行(直到minSdkVersion)。
如果您没有设置它,默认情况下它等于minSdkVersion,为最新版本的Android提供了一些意外行为。 因此,定义targetSDKVersion是一个很好的做法。