我是否需要针对这些条件明确授予各种 internet/network Manifest 权限?

Do I need to explicitly grant various internet/network Manifest permissions for these conditions?

在我的应用程序中,我有以下相关组件:

-我的应用使用 Google AdMob 广告横幅

-我的应用程序允许您使用媒体 Intent 选择器导入/导出数据,这可能涉及让用户选择一些在线服务,例如 Gmail、Google Drive 等

-我的应用偶尔会在打开用户浏览器并转到指定站点的某些地方显示超链接和按钮。

这些是否需要清单中的特殊许可?

您需要在清单中使用以下权限:

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

-我的应用程序使用Google AdMob广告横幅 - 在AdMob的官方网站上,没有任何与互联网许可相关的内容,如您所见here

-我的应用允许您使用媒体 Intent 选择器导入/导出数据,这可能涉及让用户选择一些在线服务,例如 Gmail、Google Drive 等如果要导入数据,需要设置权限!

-我的应用程序偶尔会在某些地方显示超链接和按钮,这些超链接和按钮会打开用户的浏览器并转到指定的站点。-我想它不需要互联网许可,但我我不确定。

不,你不需要。 查看此快速入门指南,发现其中没有提及添加这些权限。 https://developers.google.com/admob/android/quick-start

我在 android P 上有一个类似的应用程序 运行,不需要任何权限。所以干杯。 还要记住,在测试广告暴徒时需要使用虚拟 ID。

由于我在这里找不到合适的答案(现有的是矛盾的),我做了功课并用真实的应用程序进行了测试。

  • A​​dMob,将依赖项添加到 SDK 时,INTERNET 和 READ_NETWORK_STATE 权限都会自动添加到生成或构建的 APK 的清单中。我在我的项目中的任何地方都没有 INTERNET 权限,但是生成的 APK 有。去掉SDK,权限没了

  • 从其他应用程序加载内容不需要互联网许可,即使这些应用程序正在从互联网接收内容。

  • 在设备的浏览器中打开 URL 也不需要互联网,浏览器需要它。

要回答 OP,不需要在清单中添加任何特殊权限来执行上述 3 个功能中的任何一个。

但是请注意,依赖 AdMob 的 SDK 会自动添加 INTERNET 权限。