2016-04-26 95 views
4

我最近更改了一个应用程序以定位棉花糖,正如您所知,我现在需要处理棉花糖权限模型。检查哪些代码使用权限

该应用hasmany文件和数千行代码。除了蛮力方式即

关闭权限和使用的应用程序,并指出其中的例外发生

有没有找出更有效的方法,其API调用的线条请求特定的权限,使他们能被包装在许可请求中?

+0

几周前我试图找出同样的问题,最好是我发现它使用aspectJ for android。但它不是快速的解决方案,也许很难,因为你还需要为需要权限的方法做切入点。 其他方式(不好,但它会给你时间换行)设置targetSdkVersion小于23。 – Alexander

回答

2

如果某些方法未检测到权限检查(例如使用Google Play服务进行位置更新),则会引发lint错误。要触发该运行,请运行Analyze> Inspect Code并查看Android Lint错误。

除此之外,蛮力是唯一的方法。我必须为我正在进行的一个项目(也有许多数千行代码)做这件事。我建议监视Logcat的错误,并努力击中应用程序。要小心,尽管......如果你在代码中发现错误,那么它们可能不会出现在logcat中,所以你必须确保应用程序的功能是预期的。

但是,它没有听起来那么难。如果花点时间审查您的应用以及需要权限的潜在地点,您会发现它非常简单。回顾这篇文章,以确定你需要什么权限http://inthecheesefactory.com/blog/things-you-need-to-know-about-android-m-permission-developer-edition/en