当前位置:   article > 正文

uniapp获取wifi连接状态_uniapp的app如何判断ios判断网络状态

uniapp的app如何判断ios判断网络状态

当使用Uniapp开发移动应用时,我们经常需要获取设备的连接状态,特别是WiFi连接状态。下面是一个简短的关于在Uniapp中获取WiFi连接状态的博客:

Uniapp中,要获取设备的WiFi连接状态,我们可以利用uni.getNetworkType接口来实现。uni.getNetworkType接口可以获取当前网络状态,包括WiFi、3G、4G等类型,从而帮助我们判断设备是否连接了WiFi。

下面是一个简单的示例代码:

首先我们需要先获取以下地理位置:

  1. //获取位置
  2. uni.getSetting({
  3. success(res) {
  4. // 请求地理定位权限
  5. uni.authorize({
  6. scope: 'scope.userLocation',
  7. success() {
  8. // 用户已经同意地理定位权限
  9. // 3. 获取地理定位信息
  10. uni.getLocation({
  11. type: 'gcj02', // 获取的坐标类型
  12. success: function(res) {
  13. },
  14. fail: function(err) {
  15. uni.showToast({
  16. title: '请打开位置信息并下拉刷新,否则会影响用户体验',
  17. icon: 'none'
  18. })
  19. }
  20. });
  21. },
  22. fail() {
  23. uni.showToast({
  24. title: '用户拒绝授权地理定位权限',
  25. icon: 'none'
  26. })
  27. uni.showModal({
  28. title: '提示',
  29. content: '请开启定位权限',
  30. success: function(res) {
  31. if (res.confirm) {
  32. uni.openSetting({
  33. success: (
  34. authRes
  35. ) => {
  36. console
  37. .log(
  38. authRes
  39. .authSetting
  40. );
  41. }
  42. });
  43. } else {
  44. uni.navigateBack({
  45. delta: 1
  46. })
  47. }
  48. }
  49. });
  50. }
  51. })
  52. }
  53. })

获取成功之后,再开始检测wifi状态

  1. // 初始化
  2. uni.startWifi({
  3. success() {
  4. console.log(111);
  5. if (that.platform == 'android') {
  6. console.log(222);
  7. // 获取wifi列表
  8. uni.getWifiList({
  9. success() {
  10. console.log(333);
  11. // 获取连接wifi的信息
  12. uni.getConnectedWifi({
  13. success(res) {
  14. console.log(res, 999);
  15. that.SSID = res.wifi.SSID
  16. console.log(that.wifis, 444);
  17. if (that.wifis != res.wifi.SSID && res.wifi
  18. .SSID !=
  19. '') {
  20. that.set_status = false
  21. }
  22. if (that.wifis == res.wifi.SSID) {
  23. that.set_status = true
  24. }
  25. uni.hideLoading();
  26. that.SSID = ''
  27. that.mess()
  28. },
  29. fail() {
  30. that.set_status = false
  31. that.SSID = ''
  32. uni.showToast({
  33. title: '获取失败',
  34. icon: 'none'
  35. })
  36. that.mess()
  37. }
  38. })
  39. },
  40. fail() {
  41. uni.hideLoading();
  42. that.message = '不在打卡范围'
  43. }
  44. })
  45. } else if (that.platform == 'ios') {
  46. // 获取连接wifi的信息
  47. uni.getConnectedWifi({
  48. success(res) {
  49. console.log(res, 999);
  50. that.SSID = res.wifi.SSID
  51. console.log(that.wifis, 444);
  52. if (that.wifis != res.wifi.SSID) {
  53. that.set_status = false
  54. }
  55. if (that.wifis == res.wifi.SSID) {
  56. that.set_status = true
  57. }
  58. uni.hideLoading();
  59. that.SSID = ''
  60. that.mess()
  61. },
  62. fail() {
  63. that.SSID = ''
  64. that.set_status = false
  65. that.SSID = ''
  66. uni.showToast({
  67. title: '获取失败',
  68. icon: 'none'
  69. })
  70. that.mess()
  71. uni.hideLoading();
  72. }
  73. })
  74. }
  75. },
  76. fail() {
  77. uni.showToast({
  78. title: '初始化失败',
  79. icon: 'none'
  80. })
  81. }
  82. })

这里需要注意的是由于安卓和苹果有些异同,所以要针对于不同手机型号做适配

下一篇文章我会讲出如何实时监测wifi连接状态,也就是说,如果切换wifi了或者关闭/打开了都会执行

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小蓝xlanll/article/detail/514674
推荐阅读
相关标签
  

闽ICP备14008679号