首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何开启/关闭移动数据下载

如何开启/关闭移动数据下载
EN

Stack Overflow用户
提问于 2018-04-30 17:55:21
回答 2查看 513关注 0票数 0

就像在Google Play Store中一样,你可以选择只通过Wifi更新应用程序,而不是通过移动数据连接,即“仅通过Wi-Fi自动更新应用程序”。或者选择同时通过移动和Wifi更新应用程序

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

EN

回答 2

Stack Overflow用户

发布于 2018-04-30 18:07:00

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

你可以使用NetworkInfo来实现你想要的东西:

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

代码语言:javascript
复制
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时,您可以拒绝该操作。

票数 0
EN

Stack Overflow用户

发布于 2018-04-30 18:13:49

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

简单指南here

代码语言:javascript
复制
    JobInfo job = new JobInfo.Builder(JOB_ID, new ComponentName(this, UpdateJobService.class))  
   .setRequiredNetworkType(JobInfo.TRANSPORT_WIFI)
   .setRequiresCharging(true)
   .build();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50098064

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档