【问题标题】:Android: preventing only a single activity from accessing internetAndroid:仅阻止单个活动访问互联网
【发布时间】:2016-05-29 15:33:04
【问题描述】:

Android 应用声明它们需要哪些权限才能工作,以便通知用户。

假设我的 Android 应用声明了互联网权限,但它只是在单个 Activity 中使用互联网访问,并希望阻止另一个 Activity 改为访问互联网。

假设不打算访问互联网的活动有一个 WebView,它对用户提供的一些 HTML 文件执行一些 javascript 处理:必须防止任何黑客攻击,因此不能授予此活动互联网访问权限,或者WebView 本身。

有可能吗?

【问题讨论】:

    标签: android security android-activity webview android-permissions


    【解决方案1】:

    您可以拦截 WebView 上的请求并根据您的用例允许/禁止。

    看这个方法:

    shouldInterceptRequest

    将资源请求通知主机应用程序并允许 应用程序返回数据。如果返回值为 null,则 WebView 会像往常一样继续加载资源。否则,该 返回响应和数据将被使用。注意:此方法在 UI线程以外的线程,因此客户应谨慎行事 访问私人数据或查看系统时。

    【讨论】:

    • 那么,它必须返回一个“空”的非空 WebResourceResponse 对象吗?我说的对吗?
    【解决方案2】:

    android 框架级别不是像这样强制执行更细粒度的安全性的地方。也许您应该首先考虑防止将不应连接到外部资源的内容加载到您的 web 视图中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-05-21
      • 1970-01-01
      • 1970-01-01
      • 2016-09-10
      • 1970-01-01
      • 2021-11-09
      • 2018-04-24
      相关资源
      最近更新 更多