【问题标题】:How to enable/disable downloading on mobile data如何启用/禁用移动数据下载
【发布时间】:2018-10-10 09:42:14
【问题描述】:

就像在 Google Play 商店中一样,您可以选择仅通过 Wifi 而不是通过移动数据连接更新应用程序,即“仅通过 Wi-Fi 自动更新应用程序”。或通过移动和 Wifi 更新应用的选项

我正在开发一个应用程序,该应用程序将从服务器下载一些媒体文件,但我想启用一个选项,如果他们只想通过 wifi 下载或通过两者下载,用户可以切换 欢迎任何帮助/建议

【问题讨论】:

标签: java android android-studio download settings


【解决方案1】:

你应该看看this guide关于网络使用管理。

您可以使用NetworkInfo 来实现您要查找的内容:

NetworkInfo:描述给定网络接口的状态 类型(当前为移动或 Wi-Fi)。

private static final String DEBUG_TAG = "NetworkStatusExample";
...
ConnectivityManager connMgr = (ConnectivityManager)
        getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo networkInfo = connMgr.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
boolean isWifiConn = networkInfo.isConnected();
networkInfo = connMgr.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
boolean isMobileConn = networkInfo.isConnected();
Log.d(DEBUG_TAG, "Wifi connected: " + isWifiConn);
Log.d(DEBUG_TAG, "Mobile connected: " + isMobileConn);

如果用户选择仅通过 Wi-Fi 下载,当使用的网络不是 Wi-Fi 时,您可以拒绝该操作。

【讨论】:

    【解决方案2】:

    您可以尝试JobScheduler 并从JobInfo 定义网络类型

    简单指南here

        JobInfo job = new JobInfo.Builder(JOB_ID, new ComponentName(this, UpdateJobService.class))  
       .setRequiredNetworkType(JobInfo.TRANSPORT_WIFI)
       .setRequiresCharging(true)
       .build();
    

    【讨论】:

      猜你喜欢
      • 2014-01-14
      • 2013-12-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-09-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多