QNUtils.h 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. //
  2. // QNUtils.h
  3. // QiniuSDK_Mac
  4. //
  5. // Created by yangsen on 2020/3/27.
  6. // Copyright © 2020 Qiniu. All rights reserved.
  7. //
  8. #import <Foundation/Foundation.h>
  9. NS_ASSUME_NONNULL_BEGIN
  10. @interface QNUtils : NSObject
  11. /// SDK 名称
  12. + (NSString *)sdkVersion;
  13. /// SDK 开发语言
  14. + (NSString *)sdkLanguage;
  15. /// 获取当前进程ID
  16. + (int64_t)getCurrentProcessID;
  17. /// 获取当前线程ID
  18. + (int64_t)getCurrentThreadID;
  19. /// 系统名称
  20. + (NSString *)systemName;
  21. /// 系统版本
  22. + (NSString *)systemVersion;
  23. /// 信号格数
  24. + (NSNumber *)getCurrentSignalStrength;
  25. /// 网络类型
  26. + (NSString *)getCurrentNetworkType;
  27. /// 获取当前时间戳 单位:ms
  28. + (NSTimeInterval)currentTimestamp;
  29. /// sdk document文件路径
  30. + (NSString *)sdkDocumentDirectory;
  31. /// sdk cache文件路径
  32. + (NSString *)sdkCacheDirectory;
  33. /// form escape
  34. /// @param string escape string
  35. + (NSString *)formEscape:(NSString *)string;
  36. /// 两个时间的时间段 单位:毫秒
  37. + (NSNumber *)dateDuration:(NSDate *)startDate endDate:(NSDate *)endDate;
  38. /// 计算 上传 或 下载 速度 单位:B/s
  39. /// @param bytes 单位: B
  40. /// @param totalTime 单位:ms
  41. /// @return 速度
  42. + (NSNumber *)calculateSpeed:(long long)bytes totalTime:(long long)totalTime;
  43. /// 根据ip和host来确定IP的类型,host可为空
  44. /// @param ip ip
  45. /// @param host host
  46. + (NSString *)getIpType:(NSString * _Nullable)ip host:(NSString * _Nullable)host;
  47. @end
  48. NS_ASSUME_NONNULL_END