android - 自 API 28 以来是否再次需要 android.permission.INTERNET?
问题描述
在尝试将 admob 和 api 级别更新到 API 28 后,我收到了这个 Lint 警告:
Missing permissions required by MobileAds.initialize: android.permission.INTERNET
调用这些函数时:
MobileAds.initialize(context, context.getString(R.string.app_id));
mInterstitialAd.loadAd(new AdRequest.Builder().build());
这怎么可能?
我记得android.permission.INTERNET
很多年前就不需要了。应用程序无需使用该权限即可访问 Internet。即使在这个应用程序中,我也有一些与 Internet 的连接,并且它们工作正常。我正在检索数据并且它正在工作,甚至还显示了广告。并且所有未经清单上声明的许可。
为什么 Lint 会显示该警告?
解决方案
android.permission.INTERNET
从那时起就需要获得许可。
但是它可能uses-permission
已经由您包含的依赖项声明,现在它不再存在,或者是因为您删除了该依赖项,或者它的更新版本不再需要它。因此,现在您必须在清单中明确请求权限。
推荐阅读
- python - How to append two DataFrames with different number of rows, populating the shorter one
- while-loop - Jmeter如何在while控制器下计算样本的响应时间
- machine-learning - 近端策略优化算法论文 - “KL”操作的定义?
- angular - 有什么方法可以支持 Angular 8 的 IE 兼容性视图?
- vue.js - 如何解决 vue 上的 [object Promise]?
- javascript - 如何在 role.name 上使用过滤器列出公会的角色?
- string - 在 Lua 中处理 TSV 文件
- windows-server-2012 - 如何防止 NTLM 登录
- jersey - Jersey JAX-RS:通过资源类调度扩展日志记录
- python - 额外文件的目录约定