我正在开发一种棉花糖前置设备的应用程序。源代码不是由我写的,而且项目本身是相当大的。
我正在使应用程序在需要时请求权限。
问题是:如何在代码中找到应该被请求许可的所有地方?
我正在使用Android Studio。
编辑
有些人建议将api更改为23,然后运行应用程序并查看其崩溃的地方。
问题是应用程序在每个地方都不会崩溃。
例如,没有权限运行此代码将使应用程序崩溃:
TelephonyManager manager = (TelephonyManager) context
.getSystemService(Context.TELEPHONY_SERVICE);
虽然这只是返回一个空数组,而不是崩溃。
final String[] SELF_PROJECTION = new String[]{
ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME,};
Cursor cursor = context.getContentResolver()
.query(ContactsContract.Profile.CONTENT_URI, SELF_PROJECTION, null, null, null);
此外,Android Lint不显示这些地方。我不知道是否应该。