仅在定位较低的API时请求Android M的权限

Fra*_*nza 6 android android-permissions android-6.0-marshmallow

因此,在我的应用程序中,我想添加一个选项,以便在用户使用Android M时有选择地添加权限(例如,直接拨号),但同时,我希望在API 22中未按要求显示该权限或者更低,因为它不是必需的,所以我不想在安装期间要求它(所以事实上只在M上提供该功能).

因此,我理解M的新模型是当用户在M上时它将允许可选权限,并且当在较低的API上时它将使这些权限成为必需的.那么有没有任何已知的方法来删除低于23的API的权限?没有单独的口味/ APK?

API大于22时,可能只将那些行合并清单?还是有一个更清洁的解决方案?

Tho*_* R. 8

这个有可能.阅读文档时,有一个特殊标志仅指示M.

使用

<uses-permission-sdk23>
Run Code Online (Sandbox Code Playgroud)

仅对Marshmallow设备申请许可.

  • @CommonsWare更新了答案,他们去了<uses-permission-sdk23>,老实说相当丑陋,但仍然做我想要的 (3认同)