YTXNetUtils.h 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. //
  2. // YTXNetUtils.h
  3. // YTXOperators
  4. //
  5. // Created by yangli on 2020/11/9.
  6. // Copyright © 2020 com.alicom. All rights reserved.
  7. //
  8. #import <Foundation/Foundation.h>
  9. NS_ASSUME_NONNULL_BEGIN
  10. @interface YTXNetUtils : NSObject
  11. /**
  12. 判断当前设备蜂窝数据网络是否开启,即3G/4G
  13. @return 结果
  14. */
  15. + (BOOL)checkDeviceCellularDataEnable;
  16. /**
  17. 判断当前上网卡运营商是否是中国联通
  18. @return 结果
  19. */
  20. + (BOOL)isChinaUnicom;
  21. /**
  22. 判断当前上网卡运营商是否是中国移动
  23. @return 结果
  24. */
  25. + (BOOL)isChinaMobile;
  26. /**
  27. 判断当前上网卡运营商是否是中国电信
  28. @return 结果
  29. */
  30. + (BOOL)isChinaTelecom;
  31. /**
  32. 获取当前上网卡运营商名称,比如中国移动、中国电信、中国联通
  33. @return 结果
  34. */
  35. + (NSString *)getCurrentCarrierName;
  36. /**
  37. 获取当前上网卡运营商编码,比如46000、46001、46003
  38. @return 结果
  39. */
  40. + (NSString *)getCurrentCarrierCode;
  41. /**
  42. 获取当前上网卡网络类型,比如WiFi,4G
  43. @return 结果
  44. */
  45. + (NSString *)getNetworktype;
  46. /**
  47. 判断当前设备是否有SIM卡
  48. @return 结果
  49. */
  50. + (BOOL)simSupportedIsOK;
  51. /**
  52. 判断wwan是否开着(通过p0网卡判断,无wifi或有wifi情况下都能检测到)
  53. @return 结果
  54. */
  55. + (BOOL)isWWANOpen;
  56. /**
  57. 判断wwan是否开着(仅无wifi情况下)
  58. @return 结果
  59. */
  60. + (BOOL)reachableViaWWAN;
  61. /**
  62. 获取设备当前网络私网IP地址
  63. @return 结果
  64. */
  65. + (NSString *)getMobilePrivateIPAddress:(BOOL)preferIPv4;
  66. /**
  67. 获取双卡设备下,非上网卡信息
  68. @return 结果
  69. */
  70. + (NSString *)getOptionalCarrierInfo;
  71. /**
  72. 获取当前蜂网络Ip地址
  73. */
  74. + (NSString *)getCellularIp;
  75. @end
  76. NS_ASSUME_NONNULL_END