正在创建一个应用程序,用于存储和检索用户存储目录中的图像。无论何时执行任何与文件相关的操作,我的应用都会在 Marshmallow 设备上崩溃。
当我构建我的应用程序时,我在gradle构建中将 targetSdkVersion 设置为 23 ,现在应用程序已完成并且在所有 pre-Marshmallow上正常工作设备。
我注意到如果我将 targetSdkVersion 设置为 21 ,那么该应用在Marshmallow上工作正常,所以可以将其设置为21或者它有任何负面后果??
答案 0 :(得分:1)
使用 targetSdkVersion 23 ,您必须使用api 23 +管理所有设备的runtime permissions。
使用 targetSdkVersion 22或更低版本,您无需管理runtime permissions,但要注意,因为在所有使用api 23+的设备中,用户可以随时撤消任何应用的权限,即使应用程序针对较低的API级别。