如何减少android权限?

How to reduce android permissions?

我正在开发一个应用程序,但我确实没有使用从 Google Play 安装时所需的权限。当用户看到这些权限时感到沮丧并且可能不会安装该应用程序。

我使用推送通知,使用这些权限访问日历:

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WRITE_CALENDAR" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />

有什么方法可以更好地查看这些权限,以免用户感到震惊?还有为什么应用程序可以访问 photos/media/files? 谢谢!

Is there any way to better view those permissions so the users will not get shocked?

删除您不需要的权限,并从您的应用中删除依赖于这些权限的功能。

但是,该对话框中显示的大部分内容并非来自您应用的 <uses-permission> 元素列表。

Also why the app has access to photos/media/files?

因为您依赖 Google 播放服务,并且 it adds <uses-permission> elements to your manifest

查看 the Play Services setup documentation 中的 "Selectively compiling APIs into your executable" 部分,看看您是否可以使用更细粒度的依赖项来减少 Play 服务在您的应用中请求的权限数量。