为什么从AndroidManifest.xml删除权限不起作用?

Ble*_*ose 4 android user-permissions android-install-apk android-permissions android-studio

没有任何权限,在Play商店有一个名为bodyweight fitness的应用程序 .它也可以在git hub上使用:https: //github.com/mazurio/bodyweight-fitness-android

我使用了来自git hub的文件并使用Android Studio自行编译了apk (无需更改文件).当我尝试安装自编译应用程序apk时,它告诉我它将使用INTERNET虽然Play商店应用程序没有.这个应用程序没有理由需要任何互联网连接.因此我从AndroidManifest.xml中删除了这一行

<uses-permission android:name="android.permission.INTERNET" />

编译和安装应用程序后,它仍然告诉我它将使用INTERNET.有人知道为什么以及如何删除此权限?

PS:我也问了开发人员,但我还没有回复.

更新:

  • 你是对的,它是从另一个部分添加的:crashlytics.
  • 而你也是对隐藏的许可是正确的.安装应用程序时会在应用程序详细信息中显示,当您单击"权限"按钮时,它会显示在Play商店中.

And*_*rew 7

每个android lib都包含包含包,权限,活动等的清单文件,因此您的应用程序将显示依赖项的所有权限.您可以在{projectDir}/{moduleDir}/build/outputs/logs/manifest-merger - * - report.txt查看最终清单创建日志

此日志将包含类似的内容

uses-permission#android.permission.INTERNET
ADDED from {myModulePath}/app/src/main/AndroidManifest.xml:6:5-67
MERGED from [net.hockeyapp.android:HockeySDK:4.1.1] /Users/devindi/.android/build-cache/ce70c6f87efc05633a59a88fccdb712db509e22d/output/AndroidManifest.xml:12:5-67
MERGED from [com.crashlytics.sdk.android:crashlytics:2.6.8] /Users/devindi/.android/build-cache/424d420499b90aec0a26ab1b5f575e318d0342b9/output/AndroidManifest.xml:9:5-67
MERGED from [com.crashlytics.sdk.android:beta:1.2.5] /Users/devindi/.android/build-cache/be2498e53f6aa976b3927954da943b23f0a800f6/output/AndroidManifest.xml:9:5-67
MERGED from [com.crashlytics.sdk.android:crashlytics-core:2.3.17] /Users/devindi/.android/build-cache/e5b1b150113ac2f0789b76a886f379cdafa8af2b/output/AndroidManifest.xml:52:5-67
MERGED from [com.crashlytics.sdk.android:answers:1.3.13] /Users/devindi/.android/build-cache/c86f3a3daec296cb6a32deb0b3d0c3f1370a024f/output/AndroidManifest.xml:9:5-67
MERGED from [io.fabric.sdk.android:fabric:1.3.17] /Users/devindi/.android/build-cache/0a51b13dbc46dc870c598edab9d128bf8f26a8d4/output/AndroidManifest.xml:29:5-67
Run Code Online (Sandbox Code Playgroud)

如您所见,我在我的清单和hockeyapp请求网络权限,crashlytics,fabric libs也请求相同的权限.https://developer.android.com/studio/build/manifest-merge.html

要强制删除权限,只需添加tools:node=”remove”到您的权限声明:

<uses-permission android:name=”android.permission.INTERNET” tools:node=”remove” />
Run Code Online (Sandbox Code Playgroud)